在Azure上,webapi + AzureAD或expressjs + passportjs

Dev*_*ezz 1 c# azure node.js express

我需要在Azure上构建一个Web应用程序,公共用户应该能够在其上创建并登录以查看和操作他们的数据.

我想我可以使用webapi + AzureAD或expressjs + passportjs.两者都可以用来直接简单地解决这个问题吗?将AzureAD用于此类应用程序是否涉及成本(无法在网站上完全实现).

C#和JS/TS都没问题.

干杯,B

Moh*_*ria 7

您可以从ASP.NET Web应用程序执行此操作

为了使Web应用程序能够通过帐户进行身份验证,您可以使用Azure Active Directory B2C执行此操作

仅供参考:Azure AD B2C使您的应用可以使用开放标准协议对社交帐户,企业帐户和Azure Active Directory帐户进行身份验证.

你要做的是:

  1. 注册您的Web应用程序(创建应用程序ID)以便从Azure AD中获取访问令牌了解请参阅Microsoft的本教程以便更好地理解

PS:确保您使用的是包含Azure AD B2C租户的目录.

  1. 使用以下参数在B2C设置中添加Web应用程序:

    • 名称:[输入向消费者描述您的应用的名称.]
    • 包含网络应用/网络API:[是 - 为网络应用选择是.]
    • 允许隐式流程:[是 - 选择是,因为应用程序使用OpenID Connect登录.]
    • 回复网址:[回复网址是Azure AD B2C返回您的应用请求的任何令牌的端点.]
    • 包括本机客户端:[是 - 如果您的应用是Web应用程序,或者如果它不是本机客户端则为否].
  2. 创建客户端密码,因为Azure AD对客户端应用程序使用OAuth2授权,因此它们需要客户端ID或应用程序ID以及客户端密钥,客户端密码或应用程序密钥.

  3. 创建策略以注册用户以进行访问,然后登录Web应用程序,创建注册或登录策略.
  4. 创建配置文件编辑策略,以允许用户自行重置其用户配置文件信息.
  5. 创建密码重置策略以在应用程序上启用密码重置.这将描述密码重置期间的消费者体验以及应用程序在成功完成时收到的令牌内容.
  6. 将以下键添加到配置部分下的appSettings部分中的Web.config文件中的现有键,如下所示,并填写值字段:

<configuration>
     <appSettings>
        <add key="ida:Tenant" value="" />
        <add key="ida:ClientId" value="" />
        <add key="ida:ClientSecret" value="" />
        <add key="ida:AadInstance" value="" />
        <add key="ida:RedirectUri" value="{Your RedirectUri}" />
        <add key="ida:SignUpSignInPolicyId" value="" />
        <add key="ida:EditProfilePolicyId" value="" />
        <add key="ida:ResetPasswordPolicyId" value="" />
     </appSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)