我使用Azure B2C来处理用户对我的应用程序的访问.我有重置密码工作流程的问题.
作为重置密码过程的一部分,验证电子邮件将发送到注册的电子邮件地址.但是,此默认模板是通用的,看起来并不专业或以任何方式链接到我的应用程序.
有没有自定义这个模板?我已经自定义了B2C html页面,但找不到电子邮件的模板?
谢谢Ash
我已使用自定义策略配置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) 我正在寻找一种方法来向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配置了多个外部提供程序.现在,用户被迫选择他们想要进行身份验证的提供程序.如何配置系统以便用户可以键入电子邮件地址,系统可以根据用户的电子邮件地址自动将用户转发到正确的IDP.与公共身份验证端点如何为Azure AD工作和学生帐户中的不同Azure域工作方式类似.
我有一个使用MSAL.js的 Angular 应用程序,当我尝试获取访问令牌时,我收到以下错误:
AADB2C90077:用户没有现有会话,请求提示参数的值为“无”。
我正在使用适用于Android库0.2.2的Microsoft身份验证库(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
我正在尝试构建一个网站,用户可以通过 Azure AD B2C 登录。登录后,我尝试提供一个安全区域,用户可以在其中通过 Microsoft Graph API 更改其 Azure B2C 用户属性(名字、姓氏等)。
我正在尝试遵循获取令牌文档
一切都在进行到步骤 #3,其中使用我在返回 URL 上收到的代码进行https://login.microsoftonline.com/common/oauth2/v2.0/token调用以获取。access_token
这是我正在做的事情的一般流程:
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)
用户登录并被重定向到redirect_uri.
redirect_uri成功收到code、id_token、 和state值。
我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)
{
"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) 尝试了多个 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 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 请求未注册错误?
我们正在开发一个需要两种不同类型用户的 Web 应用程序:
客户使用其 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
azure-ad-b2c ×10
azure ×4
android ×1
asp.net-mvc ×1
cors ×1
email ×1
identity-experience-framework ×1
oauth-2.0 ×1