标签: azure-ad-b2c

Azure B2C电子邮件验证模板自定义

我使用Azure B2C来处理用户对我的应用程序的访问.我有重置密码工作流程的问题.

作为重置密码过程的一部分,验证电子邮件将发送到注册的电子邮件地址.但是,此默认模板是通用的,看起来并不专业或以任何方式链接到我的应用程序.

有没有自定义这个模板?我已经自定义了B2C html页面,但找不到电子邮件的模板?

谢谢Ash

email azure azure-ad-b2c

6
推荐指数
2
解决办法
2577
查看次数

具有自定义策略的Azure AD B2C:无法使用临时密码对用户进行身份验证

我已使用自定义策略配置Azure AD B2C,但我无法使用Azure门户中创建的新用户进行身份验证.用户有一个临时密码.即使用户名和密码正确,Azure AD B2C 也会返回错误文本无效的用户名或密码.

我已确认可以使用非自定义策略在Azure AD B2C中使用新用户和临时密码登录.登录后,系统会提示用户更改其密码.

可以使用本指南中描述的自定义策略重现该问题: 开始使用自定义策略.

附加信息:

我在UserJourneyRecorderEndpoint https://b2crecorder.azurewebsites.net/stream?id=<guid>中配置了b2crecorder.通过它可以访问更多信息https://b2crecorder.azurewebsites.net/trace_102.html?id=<guid>

该问题导致以下日志记录:

SelfAssertedMessageValidationHandler

The message was received from null

Validation via SelfAssertedAttributeProvider

Additional validation is required...

OperativeTechnicalProfile is login-NonInteractive

Mapping 'username' partner claim type to 'signInName' policy claim type

Mapping default value 'undefined' to policy 'grant_type'

Mapping default value 'undefined' to policy 'scope'

Mapping default value 'undefined' to policy 'nca'

Mapping default value 'undefined' to policy 'client_id'

Mapping default value 'undefined' to …
Run Code Online (Sandbox Code Playgroud)

azure-ad-b2c

6
推荐指数
1
解决办法
2315
查看次数

Azure AD B2C - 自定义策略中的"电子邮件"声明

我正在寻找一种方法来向emailsAzure AD B2C的自定义策略添加声明(电子邮件集合).此应用程序声明可直接从Azure门户获得,但我找不到在我需要创建的自定义策略中实现此方法的方法.

我想要实现的是为我的WebApp用户提供Azure AD B2C身份验证,为员工提供Azure AD身份验证作为自定义身份验证提供程序,这意味着我需要emails为本地帐户和Azure AD 添加两次声明.

我按照本指南制作自定义策略,因此我添加了一个新ClaimsProvider的TrustFrameworkExtensions.xml文件.

当我下载在Azure门户中创建的注册和登录策略时,我可以看到以下输出声明:

<OutputClaim ClaimTypeReferenceId="emails" />
Run Code Online (Sandbox Code Playgroud)

我试图将该行添加到我的自定义策略中,但它不会返回emails声明.

有任何想法吗?

azure-ad-b2c identity-experience-framework

6
推荐指数
2
解决办法
1784
查看次数

如何为Azure AD B2C中的多个提供程序实现单个登录界面

我为Azure AD B2C配置了多个外部提供程序.现在,用户被迫选择他们想要进行身份验证的提供程序.如何配置系统以便用户可以键入电子邮件地址,系统可以根据用户的电子邮件地址自动将用户转发到正确的IDP.与公共身份验证端点如何为Azure AD工作和学生帐户中的不同Azure域工作方式类似.

azure-ad-b2c

6
推荐指数
1
解决办法
204
查看次数

AADB2C90077:用户没有现有会话,请求提示参数的值为“无”

我有一个使用MSAL.js的 Angular 应用程序,当我尝试获取访问令牌时,我收到以下错误:

AADB2C90077:用户没有现有会话,请求提示参数的值为“无”。

azure-ad-b2c

6
推荐指数
1
解决办法
6836
查看次数

适用于Android的MSAL无法执行B2C登录

我正在使用适用于Android0.2.2Microsoft身份验证库(MSAL)预览版在本机Android应用中执行Azure AD B2C登录。该库将打开浏览器以开始登录过程。之后,我成功登录,它导航我回到该应用程序。在内部AuthenticationCallback,出现以下错误:

 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'long java.lang.Long.longValue()' on a null object reference
      at com.microsoft.identity.common.internal.cache.MicrosoftStsAccountCredentialAdapter.getExpiresOn(MicrosoftStsAccountCredentialAdapter.java:231)
      at com.microsoft.identity.common.internal.cache.MicrosoftStsAccountCredentialAdapter.createAccessToken(MicrosoftStsAccountCredentialAdapter.java:78)
      at com.microsoft.identity.common.internal.cache.MicrosoftStsAccountCredentialAdapter.createAccessToken(MicrosoftStsAccountCredentialAdapter.java:45)
      at com.microsoft.identity.common.internal.cache.MsalOAuth2TokenCache.save(MsalOAuth2TokenCache.java:112)
      ...
Run Code Online (Sandbox Code Playgroud)

当我调试和跟踪库代码,就好像图书馆订的是expires_in从外地TokenResponse。有什么想法如何发生的吗?

这也是该库的原始配置文件:

{
  "client_id" : "XXX",
  "authorization_user_agent" : "DEFAULT",
  "redirect_uri" : "msalXXX://auth",
  "authorities" : [
    {
      "type": "B2C",
      "authority_url": "https://TTT.b2clogin.com/tfp/TTT.onmicrosoft.com/B2C_1_susi/"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

其中XXX是客户ID,TTT是租户名称。

我还启用了该库的日志记录。这是从浏览器取回之后的内容:

D:  [2019-04-09 11:22:44 - {"thread_id":"2","correlation_id":"b843f0f5-d446-480c-9c63-cfcc9ad74e51"}] Completing acquire token... Android 28
D:  [2019-04-09 11:22:44 - …
Run Code Online (Sandbox Code Playgroud)

android azure azure-active-directory azure-ad-b2c azure-ad-msal

6
推荐指数
1
解决办法
429
查看次数

获取访问令牌时 invalid_grant 错误

我正在尝试构建一个网站,用户可以通过 Azure AD B2C 登录。登录后,我尝试提供一个安全区域,用户可以在其中通过 Microsoft Graph API 更改其 Azure B2C 用户属性(名字、姓氏等)。

我正在尝试遵循获取令牌文档

一切都在进行到步骤 #3,其中使用我在返回 URL 上收到的代码进行https://login.microsoftonline.com/common/oauth2/v2.0/token调用以获取。access_token

这是我正在做的事情的一般流程:

  1. 最终用户单击我的本地主机站点上的登录链接,该链接链接到我的 Azure B2C 租户策略。链接看起来像这样:
https://login.microsoftonline.com/mytenantname.onmicrosoft.com/oauth2/v2.0/authorize
?client_id=[MyAppID]
&response_type=code+id_token
&redirect_uri=http%3A%2F%2Flocalhost%3A17000%2Fprocessing%2Findex
&response_mode=query
&scope=openid%20offline_access%20https%3A%2F%2Fgraph.microsoft.com%2Fuser.read%20https%3A%2F%2Fgraph.microsoft.com%2Fuser.write
&state=[MyCustomState]&p=[MyCustomPolicy]
Run Code Online (Sandbox Code Playgroud)
  1. 用户登录并被重定向到redirect_uri.

  2. redirect_uri成功收到codeid_token、 和state值。

  3. code从中获取值并POST https://login.microsoftonline.com/common/oauth2/v2.0/token使用以下正文发出请求:

POST https://login.microsoftonline.com/common/oauth2/v2.0/token
HTTP/1.1

grant_type=authorization_code
&code=[code]
&client_secret=[application secret]
&scope=openid%20offline_access%20https%3A%2F%2Fgraph.microsoft.com%2Fuser.read%20https%3A%2F%2Fgraph.microsoft.com%2Fuser.readwrite
&redirect_uri=http%3A%2F%2Flocalhost%3A17000%2Fprocessing%2Findex
Run Code Online (Sandbox Code Playgroud)
  1. 我从该端点收到的响应代码是上面的错误消息。
{
  "error": "invalid_grant",
  "error_description": "AADSTS9002313: Invalid request. Request is malformed or invalid.\r\nTrace ID:6d7a8e32-bcbf-4fc4-a37a-87dae4781b00\r\nCorrelation ID:252912b7-5775-491a-968f-00ab03696dd9\r\nTimestamp: 2019-06-2722:11:18Z",
  "error_codes": [9002313],
  "timestamp": "2019-06-27 …
Run Code Online (Sandbox Code Playgroud)

azure-active-directory azure-ad-b2c microsoft-graph-api

6
推荐指数
1
解决办法
3万
查看次数

Azure AD B2C - b2clogin.com CORS

尝试了多个 OIDC 身份验证库后,我的 Angular 应用程序仍然没有成功。我总是收到此错误:

从源“ https://192.168.3.2:4200 ”访问“https://{tenant}.b2clogin.com/{tenant-GUID}/v2.0/.well-known/openid-configuration”处的 XMLHttpRequest已已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。

有没有办法设置CORS?

有任何想法吗?

azure cors azure-active-directory azure-ad-b2c

6
推荐指数
1
解决办法
2245
查看次数

Azure AD B2C:请求中提供的重定向 URI 未注册客户端 ID...但实际上是

我们有以下 Azure AD B2C 应用程序(我们将其称为aadb2c),具有以下设置

  Include web app/ web API: YES
  Allow Implicit Flow: YES
  Reply Url:
   - https://localhost:44339/
   - https://productionURL.com
   - https://productionURL.com/

   App ID URI (which is optional): none
   Native CLient: NO
Run Code Online (Sandbox Code Playgroud)

我们的网站使用此应用程序https://productionURL.com通过 azure AD B2C 登录其用户。

然而,在生产中我们不断收到错误:

The redirect URI 'productionURL.com' provided in the request is not registered for the client id 'aadb2c'

据此我们应该添加到回复网址的链接。但正如您在上面看到的,我们已经包含https://productionURL.com在 Azure AD B2C 刀片的“回复 URL”部分中。

什么可能导致此错误发生?我们如何解决重定向 URI 请求未注册错误?

azure azure-active-directory azure-ad-b2c

6
推荐指数
1
解决办法
1万
查看次数

从 Azure AD 到 Azure B2C 的模拟

我们正在开发一个需要两种不同类型用户的 Web 应用程序:

  • 管理员(映射到 Azure AD、SSO);
  • 客户(映射到 Azure AD B2C);

客户使用其 Azure AD B2C 帐户登录 Web 应用程序。管理员使用其 Azure AD 帐户登录网站的管理 UI 区域。这部分很好。

然而,要求之一是管理员能够冒充客户,以便他们可以代表客户执行某些任务,例如下订单。

我们将使用 OAuth(.NET 包)进行授权。我的问题实际上有两个:

1)OAuth是否支持冒充其他账户?

2) 如果是,Azure AD 中的帐户是否有可能模拟 Azure AD B2C 中的用户 - 目前它们是不同的目录,彼此不可见。

也许我的问题有点模糊,我们正在寻找正确方向的一些指示。

提前谢谢了

点开发

asp.net-mvc single-sign-on oauth-2.0 azure-active-directory azure-ad-b2c

6
推荐指数
2
解决办法
2409
查看次数