azure-ad-b2c 相关问题

Azure AD B2C是一种云身份管理解决方案,适用于面向客户(消费者和企业)的Web和移动应用程序。

Microsoft Graph API ADB2C SignInActivity 更新滞后

我们正在尝试获取 ADB2C 应用程序的某些用户的最后登录时间。当我们请求 https://graph.microsoft.com/v1.0/users?$

回答 1 投票 0

AzureB2C中有没有办法用自定义按钮调用特殊的子旅程

我目前在应用程序中面临着特定用户旅程的独特挑战。在此流程中,用户最初提供其电子邮件地址或选择身份提供商 (IdP)。自定义策略

回答 1 投票 0

where 是 TransformationMethod 定义的位置

我是 Azure b2c IEF 政策的新手。 TransformationMethod 在哪里定义?它是由 Azure 定义的吗?有什么参考吗? 转换方法=“GenerateJson” 我是 Azure b2c IEF 政策的新手。 TransformationMethod 在哪里定义?它是由 Azure 定义的吗?有参考吗? TransformationMethod="GenerateJson" <ClaimsTransformation Id="GenerateEmailRequestBody" TransformationMethod="GenerateJson"> <InputClaims> <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="personalizations.0.to.0.email" /> </InputClaims> 更新: 在这里找到参考: https://learn.microsoft.com/en-us/azure/active-directory-b2c/claimstransformations 在 Azure AD B2C 中,TransformationMethod 属性由 Azure 预定义,用于指定返回声明应采用的格式。 您可以检查此参考,其中包含不同类型的声明转换方法以及实时演示链接。 “GenerateJson”方法指示应将输入的声明转换为JSON格式。当我运行它的Live Demo时,我得到了下面的页面来输入声明: 单击 Continue 按钮后,它显示了如何将声明转换为 JSON 有效负载,如下所示: 此 JSON 值将显示在 B2C ID 令牌的输出声明中,如下所示: 参考: unit-tests/claims-transformation/json at main · azure-ad-b2c/unit-tests · GitHub

回答 1 投票 0

在 Blazor Wasm 项目中集成 Azure B2C 时出错

我创建了一个新的 Blazor WebAssembly 项目,并尝试使用 Microsoft.Identity.Web 版本 2.6.1 以及 Microsoft.Identity.Web.UI 2.6.1 将身份验证与 Azure B2C 集成。然而,杜...

回答 1 投票 0

具有可验证凭据的Azure B2C - SelfAsserted.html 中未生成二维码

遵循此处的可验证凭据 B2C 示例 https://github.com/Azure-Samples/active-directory-verABLE-credentials/blob/main/B2C/README.md 我已经更新了 selfasserted.html 文件...

回答 1 投票 0

重定向到特定的 wiki js 身份验证策略

我有一个 wiki js 应用程序,有 2 个 azure AD 身份验证策略:/login url 下的 strat1 和 strat2,它向我显示了 2 个策略的选项,当我选择其中一个策略时,它会将我重定向到 azure

回答 1 投票 0

使用 Azure Ad 和 Azure AD B2C 保护 ASPNET Core 中的控制器

我们有一个在 Azure 应用服务中运行的 ASP NET Core We API (.NET8)。我们正在使用 Microsoft Identity Web (2.16.1) 并像这样配置启动 服务 .添加MicrosoftIdentityWebApiAuthenti...

回答 1 投票 0

Mendix 和 Azure Ad B2C AuthRequest 没有断言消费者服务 URL

我尝试让 Azure AD B2C 在 Mendix 上运行。 我们让它与普通的 Azure AD 一起工作,这非常简单,因为所有操作都是在 GUI 中完成的。 对于 Azure AD B2C,这是通过 XML 完成的,因此有点困难。 我有

回答 2 投票 0

Azure AD B2C - 无法在自定义策略中登录现有 live.com 用户

我的公司正在从 Azure AD B2C 用户流过渡到自定义策略,以适应更复杂的场景,例如帐户链接。在我们的目录中,我们有拥有 Microsoft 帐户的用户(...

回答 1 投票 0

HttpContext.User.Identity.Name 始终返回 null

我正在使用 B2C ID 提供商。我的应用程序中的身份验证部分工作正常。但是,我在尝试检索有关登录用户的信息时遇到了问题。 HttpC...

回答 1 投票 0

Azure AD B2C - 同一租户中的 2 个应用程序之间的单点登录(Next.js 和 wikiJS)

我在同一个 Azure AD B2C 租户中注册了 2 个应用程序。 App1 - 使用 msal-react 进行 azure ad b2c 身份验证的下一个 js 应用程序 App2 - 具有 2 个身份验证策略(客户和员工)的 WikiJS 应用程序。 这 2 个应用程序...

回答 1 投票 0

将 KMSI 从复选框自定义为是或否按钮作为单独的用户旅程

我正在为本地帐户登录启用“保持登录状态”设置。 目前,技术配置文件设置如下。 我如何设置单独的技术配置文件来捕获

回答 1 投票 0

隐藏 Azure B2C AD 自定义策略中 UI 中的元素

我试图隐藏 Azure AD B2C 自定义策略中的某些元素: 密码重置页面上需要隐藏“更改电子邮件”按钮。 进入 MFA OTP 页面上的“继续”按钮...

回答 1 投票 0

如果有多个Azure b2c登录页面,登录时请求错误或无响应

我们正在将 Azure B2C 用于我们的几个 Web 应用程序。用户可以使用 M365 身份验证或本地帐户通过 Azure B2C 登录我们的 Web 应用程序。一般用

回答 1 投票 0

索赔集合中缺少 Azure ADB2C“子”

我正在将 AD 租户作为联合身份提供商连接到 ADB2C 租户。在最后的编排步骤中,发送声明: 我正在将 AD 租户作为联合身份提供商连接到 ADB2C 租户。在最后的编排步骤中,发送声明: <OrchestrationStep Order="6" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" /> 我收到错误:“'{ourTenant}.onmicrosoft.com' 中的 B2C_1A_signup_signin' 策略指定了声明集合中缺少的主题声明 'sub'。异常类型:PolicyException” 但是,当我在 VSCode 中或直接在 Application Insights 中检查时,该声明似乎确实存在于集合中: 来自应用程序洞察... 例外情况 “{tenant}.onmicrosoft.com”中的“B2C_1A_signup_signin”策略指定了声明集合中缺少的主题声明“sub”。 索赔 账户类型:员工 替代安全 ID: {"type":6,"identityProvider":"https://login.microsoftonline.com/{id}/v2.0","key":"Z3J...."} 身份验证来源:socialIdpAuthentication 显示名称:Paul identityProvider:https://login.microsoftonline.com/{id}/v2.0 发行者用户 ID:grGppTQoYIYEseflV6OklohGWHJCiHVuo0WnqTm3bY8 子:grGppTQoYIYEseflV6OklohGWHJCiHVuo0WnqTm3bY8 租户Id:{id} upn用户名:bd3e055d-172e-4282-b6a3-47cac965d10a userPrincipalName:cpim_bd3e055d-172e-4282-b6a3-47cac965d10a@{租户}.onmicrosoft.com 完整代码如下。仅执行步骤 1,2 和 6(3,4,5)用于本地登录): <UserJourney Id="SignUpOrSignIn"> <OrchestrationSteps> <!-- Check if staff or member --> <OrchestrationStep Order="1" Type="ClaimsExchange"> <ClaimsExchanges> <ClaimsExchange Id="AccountTypeInputCollectorClaimsExchange" TechnicalProfileReferenceId="AccountTypeInputCollector"/> </ClaimsExchanges> </OrchestrationStep> <!-- HANDLE STAFF LOGIN--> <OrchestrationStep Order="2" Type="ClaimsExchange"> <Preconditions> <Precondition Type="ClaimsExist" ExecuteActionsIf="true"> <Value>objectId</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> <Precondition Type="ClaimEquals" ExecuteActionsIf="false"> <Value>accountType</Value> <Value>staff</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> </Preconditions> <ClaimsExchanges> <ClaimsExchange Id="SignUpWithLogonEmailExchange-Staff" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" /> <ClaimsExchange Id="FederatedClaimsExchange" TechnicalProfileReferenceId="AAD-Company-OpenIdConnect" /> </ClaimsExchanges> </OrchestrationStep> <!-- HANDLE NON-STAFF LOGINS--> <OrchestrationStep Order="3" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin"> <Preconditions> <Precondition Type="ClaimsExist" ExecuteActionsIf="false"> <Value>accountType</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> <Precondition Type="ClaimEquals" ExecuteActionsIf="true"> <Value>accountType</Value> <Value>staff</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> </Preconditions> <ClaimsProviderSelections> <ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" /> </ClaimsProviderSelections> <ClaimsExchanges> <ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" /> </ClaimsExchanges> </OrchestrationStep> <OrchestrationStep Order="4" Type="ClaimsExchange"> <Preconditions> <Precondition Type="ClaimsExist" ExecuteActionsIf="true"> <Value>objectId</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> <Precondition Type="ClaimEquals" ExecuteActionsIf="true"> <Value>accountType</Value> <Value>staff</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> </Preconditions> <ClaimsExchanges> <ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" /> </ClaimsExchanges> </OrchestrationStep> <!-- This step reads any user attributes that we may not have received when in the token. --> <OrchestrationStep Order="5" Type="ClaimsExchange"> <Preconditions> <Precondition Type="ClaimEquals" ExecuteActionsIf="true"> <Value>accountType</Value> <Value>staff</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> <Precondition Type="ClaimsExist" ExecuteActionsIf="false"> <Value>objectId</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition> </Preconditions> <ClaimsExchanges> <ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" /> </ClaimsExchanges> </OrchestrationStep> <OrchestrationStep Order="6" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" /> </OrchestrationSteps> <ClientDefinition ReferenceId="DefaultWeb" /> </UserJourney> 技术简介: <ClaimsProvider> <Domain>Company</Domain> <DisplayName>Login using Staff_Test_AD</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="AAD-Company-OpenIdConnect"> <DisplayName>Continue with Active Directory</DisplayName> <Description>Login with an account in the staff Active Directory</Description> <Protocol Name="OpenIdConnect"/> <Metadata> <Item Key="METADATA">https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration</Item> <Item Key="client_id">{Settings:ADFederatedTestApplicationId}</Item> <Item Key="response_types">code</Item> <Item Key="scope">openid profile</Item> <Item Key="response_mode">form_post</Item> <Item Key="HttpBinding">POST</Item> <Item Key="UsePolicyInRedirectUri">false</Item> <Item Key="DiscoverMetadataByTokenIssuer">true</Item> <!-- The key below allows you to specify each of the Azure AD tenants that can be used to sign in. Update the GUIDs below for each tenant. --> <Item Key="ValidTokenIssuerPrefixes">https://login.microsoftonline.com/{Settings:ADFederatedTenantId}</Item> <!-- The commented key below specifies that users from any tenant can sign-in. Uncomment if you would like anyone with an Azure AD account to be able to sign in. --> <!-- <Item Key="ValidTokenIssuerPrefixes">https://login.microsoftonline.com/</Item> --> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_StaffAdTest"/> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub"/> <OutputClaim ClaimTypeReferenceId="sub" PartnerClaimType="sub"/> <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid"/> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" /> <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" /> <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" /> <!-- <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" AlwaysUseDefaultValue="true" /> --> <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/> <!-- <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/> --> </OutputClaimsTransformations> <!-- <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD"/> --> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin"/> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider> 已确保索赔已在索赔集中通过 添加了应用程序洞察并经过验证 我没有看到任何突出的东西! 可能与注释掉“CreateSubjectClaim...”有关? 你的RP是什么样的? 你有没有尝试过类似的事情: <OutputClaim ClaimTypeReferenceId="temp" PartnerClaimType="sub"/> 在联邦然后: <OutputClaim ClaimTypeReferenceId="temp" PartnerClaimType="sub"/> 在 RP 中?

回答 1 投票 0

如何在B2C用户令牌中添加群组声明?

目前我们在Azure B2C租户中有一个应用程序注册。我们希望将 Group 声明作为 B2C 用户令牌的一部分包含在内。 尝试了以下方法 将应用程序注册清单更新为“

回答 1 投票 0

带有查询参数值的Azure B2C 策略内容定义

我使用查询参数(路径)值在内容定义中构造加载 URI,如下所示: 我使用查询参数(路径)值在内容定义中构造加载 URI,如下所示: <ContentDefinition Id="api.selfasserted.errorpage"> <LoadUri>https://{OAUTH-KV:path}/error.html</LoadUri> <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.7</DataUri> </ContentDefinition> 有没有办法为 LoadUri 中的查询参数设置默认值,以便在有人未在 URL 中传递任何查询参数时它不会失败? 不,您的 LoadUri 的域部分不可能有后备位置。 但是,您可以通过不同的方式构建它,通过参数化 URL 的路径部分来实现您想要实现的目标。 <LoadUri>https://{OAUTH-KV:path}/error.html</LoadUri> 会变成 <LoadUri>https://mytemplates.co.uk/{OAUTH-KV:brand}/error.html</LoadUri> 然后您将在您的网站/存储帐户上托管两个模板: https://mytemplates.co.uk/LeosBrand/error.html(如果提供了参数);https://mytemplates.co.uk/error.html(如果没有参数,这将是后备)。 这并不能阻止人们给你一个错误的参数和不匹配的路径,但可以通过使用应用程序逻辑进行排序(这意味着与静态托管文件相比,应用程序服务)。 您还可以使用 ContentDefinitionParameters 将变量移动到查询参数 - https://mytemplates.co.uk/error.html 的加载 URI 将请求位于 https://mytemplates.co.uk/error.html?brand=LeosBrand 的模板

回答 1 投票 0

NextAuth Azure AD B2C - NextJS Pages Typescript 中未定义访问令牌

我一直在尝试在会话中附加访问令牌,但我没有获得访问令牌的值。 我不确定我是否做对了一切: 从“节点:util”导入 util; 进口Ne...

回答 1 投票 0

Azure AD B2C 用户流在保存“访问令牌(隐式流)”时抛出“访问...已被 CORS 策略阻止:不允许方法 PATCH...”

在我的 Azure AD B2C 中,我创建了一个应用程序来实现用户流。 不幸的是,当我尝试“运行用户流”时,我得到的令牌不正确并且无法解码。 我红色它是为了解决...

回答 1 投票 0

ASP.NET Core 中的 Azure AD B2C

我正在尝试将Azure AD B2C集成到ASP.net core MVC应用程序中。它最初显示登录页面,当输入用户名和密码后单击“登录”时,它会进入循环。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.