#azure #azure-active-directory #azure-ad-b2c
#azure #azure-active-directory #azure-ad-b2c
Вопрос:
Я хочу разрешить пользователям проходить аутентификацию с помощью учетных записей Google, Facebook и Microsoft вместе с их локальной учетной записью. Я могу добавить 2 поставщика социальных удостоверений, добавив один пользовательский переход в TrustFrameworkBase и один в TrustFrameworkExtensions. Для обеих этих поездок идентификатор пользователя = «SignUpOrSignIn». Поскольку у них обоих одинаковый идентификатор, мне не разрешено добавлять другого пользователя для моего поставщика социальных удостоверений. Как я могу обойти эту проблему?
Ответ №1:
Вы можете добавить несколько поставщиков социальных удостоверений в путешествие пользователя SignUpOrSignIn следующим образом:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
<ClaimsProviderSelection TargetClaimsExchangeId="FacebookExchange" />
<ClaimsProviderSelection TargetClaimsExchangeId="GoogleExchange" />
<ClaimsProviderSelection TargetClaimsExchangeId="MicrosoftAccountExchange" />
<ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" />
</ClaimsProviderSelections>
<ClaimsExchanges>
<ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>objectId</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="FacebookExchange" TechnicalProfileReferenceId="Facebook-OAUTH" />
<ClaimsExchange Id="GoogleExchange" TechnicalProfileReferenceId="Google-OAUTH" />
<ClaimsExchange Id="MicrosoftAccountExchange" TechnicalProfileReferenceId="MSA-OIDC" />
<ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" />
</ClaimsExchanges>
</OrchestrationStep>
Сведения о техническом профиле Google-OAUTH см. Здесь .
Сведения о техническом профиле MSA-OIDC см. Здесь .