温馨提示:本文翻译自stackoverflow.com,查看原文请点击:其他 - Azure AD B2C Custom SignIn Policy Displays SignUpSignIn
azure azure-active-directory azure-ad-b2c

其他 - Azure AD B2C自定义登录策略显示SignUpSignIn

发布于 2020-03-27 11:36:17

我有一个自定义的登录策略,因为我需要在登录过程中(通过REST API)从应用程序数据库中获取某些内容。

所以我有这个用户旅程

<UserJourney Id="SignIn">
      <OrchestrationSteps>

        <OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.localaccountsignin">
          <ClaimsProviderSelections>
            <ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" />
          </ClaimsProviderSelections>
          <ClaimsExchanges>
            <ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
          </ClaimsExchanges>
        </OrchestrationStep>

        <OrchestrationStep Order="2" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
          </ClaimsExchanges>
        </OrchestrationStep>

        <OrchestrationStep Order="3" Type="ClaimsExchange">
          <ClaimsExchanges>
            <ClaimsExchange Id="GetCustomDbObj" TechnicalProfileReferenceId="GetCustomDbObj" />
          </ClaimsExchanges>
        </OrchestrationStep>

        <OrchestrationStep Order="4" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />

      </OrchestrationSteps>
      <ClientDefinition ReferenceId="DefaultWeb" />
    </UserJourney>

您可以看到在步骤3中,我引用了一个自定义技术配置文件,该配置文件从自定义REST API中获取了一些数据。

在第一步中,我显示(据说)登录页面,它引用了 api.localaccountsignin

<ContentDefinition Id="api.localaccountsignin">
        <LoadUri>https://mytenant.b2clogin.com/static/tenant/default/signin.cshtml</LoadUri>
        <RecoveryUri>https://mytenant.b2clogin.com/static/tenant/default/signin.cshtml</RecoveryUri>
        <DataUri>urn:com:microsoft:aad:b2c:elements:contract:unifiedssp:1.0.0</DataUri>
        <Metadata>
          <Item Key="TemplateId">azureBlue</Item>
        </Metadata>
      </ContentDefinition>

问题是,当我使用该策略时,看到的页面类似于注册+登录统一策略

在此处输入图片说明

我希望的不仅仅是登录策略。

我怀疑这与

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.localaccountsignin">

更具体地说,CombinedSignInAndSignUp 但是我不知道要放什么。我尝试使用,ClaimsExchange但是没有

有解决方案吗?

查看更多

查看更多

提问者
user10962730
被浏览
148
nzpcmad 2019-07-04 03:11

按照这个

您可以通过将SignUp设置为“ False”来实现。

<Item Key=”setting.showSignupLink”>False</Item>