Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Начиная с 1 мая 2025 г. Azure AD B2C больше не будет доступен для приобретения для новых клиентов. Дополнительные сведения см. в разделе "Вопросы и ответы".
Прежде чем начать, используйте селектор типа политики в верхней части этой страницы, чтобы выбрать тип политики, которую вы настроите. Azure Active Directory B2C предлагает два метода определения способа взаимодействия пользователей с вашими приложениями: с помощью предопределенных потоков пользователей или полностью настраиваемых пользовательских политик. Действия, которые необходимо выполнить, отличаются для каждого метода.
Замечание
Эта функция доступна в общедоступной предварительной версии.
Предпосылки
- Создайте поток пользователя, чтобы пользователи могли зарегистрироваться и входить в ваше приложение.
- Зарегистрируйте веб-приложение.
- Выполните действия, описанные в статье "Начало работы с настраиваемыми политиками в Active Directory B2C". В этом руководстве описано, как обновить пользовательские файлы политики для использования конфигурации клиента Azure AD B2C.
- Зарегистрируйте веб-приложение.
Создание приложения Weibo
Чтобы включить вход для пользователей с учетной записью Weibo в Azure Active Directory B2C (Azure AD B2C), необходимо создать приложение на портале разработчика Weibo. Если у вас еще нет учетной записи Weibo, вы можете зарегистрироваться по https://weibo.comадресу.
- Войдите на портал разработчика Weibo с учетными данными учетной записи Weibo.
- После входа выберите отображаемое имя в правом верхнем углу.
- В раскрывающемся списке выберите 编辑开发者信息 (изменение сведений о разработчике).
- Введите необходимые сведения и выберите 提交 (отправить).
- Завершите процесс проверки электронной почты.
- Перейдите на страницу проверки подлинности.
- Введите необходимые сведения и выберите 提交 (отправить).
Регистрация приложения Weibo
- Перейдите на новую страницу регистрации приложения Weibo.
- Введите необходимые сведения о приложении.
- Выберите "создать".
- Скопируйте значения ключа приложения и секрета приложения. Для добавления поставщика удостоверений в тенант вам потребуется каждый из них.
- Отправьте необходимые фотографии и введите необходимые сведения.
- Выберите 保存以上信息 (save).
- Выберите 高级信息 (дополнительные сведения).
- Выберите 编辑 (изменить) рядом с полем OAuth2.0 授权设置 (URL-адрес перенаправления).
- В поле OAuth2.0 授权设置 (URL-адрес перенаправления), введите
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp
. Если вы используете личный домен, введитеhttps://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp
. Заменитеyour-tenant-name
именем клиента иyour-domain-name
личным доменом. - Выберите 提交 (отправить).
Настройка Weibo в качестве поставщика удостоверений
- Войдите на портал Azure с учетной записью, которая имеет по крайней мере права администратора внешнего поставщика удостоверений .
- Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
- Выберите все службы в левом верхнем углу портала Azure, найдите и выберите Azure AD B2C.
- Выберите поставщики удостоверений, а затем выберите Weibo (предварительная версия).
- Введите Имя. Например, Weibo.
- В поле идентификатора клиента введите ключ приложения Weibo, созданного ранее.
- В поле Секрет клиента введите секрет приложения, записанный ранее.
- Нажмите кнопку "Сохранить".
Добавить поставщика удостоверений Weibo в пользовательский поток
- В клиенте Azure AD B2C выберите потоки пользователей.
- Щелкните поток пользователя, в который вы хотите добавить поставщика удостоверений Weibo.
- В разделе поставщиков удостоверений социальных сетей выберите Weibo.
- Нажмите кнопку "Сохранить".
- Чтобы протестировать вашу политику, выберите Запустить поток пользователя.
- Для приложения выберите веб-приложение с именем testapp1 , которое вы ранее зарегистрировали. В поле URL-адрес ответа должно содержаться значение
https://jwt.ms
. - Нажмите на кнопку Запустить пользовательский поток.
- На странице регистрации или входа выберите Weibo , чтобы войти с помощью учетной записи Weibo.
Если процесс входа выполнен успешно, браузер перенаправляется на https://jwt.ms
, где отображается содержимое токена, возвращаемого Azure AD B2C.
Создание ключа политики
Необходимо сохранить секрет клиента, записанный ранее в клиенте Azure AD B2C.
- Войдите на портал Azure.
- Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
- Выберите все службы в левом верхнем углу портала Azure, а затем найдите и выберите Azure AD B2C.
- На странице "Обзор" выберите Identity Experience Framework.
- Выберите ключи политики и нажмите кнопку "Добавить".
- В разделе "Параметры" выберите
Manual
. - Введите имя для ключа политики. Например:
WeiboSecret
. ПрефиксB2C_1A_
добавляется автоматически в имя ключа. - В поле Secret введите ваш секрет клиента, который вы записали ранее.
- Для использования ключа выберите
Signature
. - Нажмите кнопку Создать.
Настройка Weibo в качестве поставщика удостоверений
Чтобы пользователи могли войти с помощью учетной записи Weibo, необходимо определить учетную запись в качестве поставщика утверждений, с которым Azure AD B2C может взаимодействовать через конечную точку. Конечная точка предоставляет набор утверждений, используемых Azure AD B2C для проверки подлинности определенного пользователя.
Вы можете определить учетную запись Weibo в качестве поставщика утверждений, добавив ее в элемент ClaimsProviders в файле расширения политики.
Откройте TrustFrameworkExtensions.xml.
Найдите элемент ClaimsProviders . Если он не существует, добавьте его в корневой элемент.
Добавьте новый ClaimsProvider следующим образом:
<ClaimsProvider> <Domain>weibo.com</Domain> <DisplayName>Weibo (Preview)</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Weibo-OAuth2"> <DisplayName>Weibo</DisplayName> <Protocol Name="OAuth2" /> <Metadata> <Item Key="ProviderName">weibo</Item> <Item Key="authorization_endpoint">https://api.weibo.com/oauth2/authorize</Item> <Item Key="AccessTokenEndpoint">https://api.weibo.com/oauth2/access_token</Item> <Item Key="ClaimsEndpoint">https://api.weibo.com/2/account/get_uid.json</Item> <Item Key="scope">email</Item> <Item Key="HttpBinding">POST</Item> <Item Key="external_user_identity_claim_id">uid</Item> <Item Key="client_id">Your Weibo application ID</Item> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_WeiboSecret" /> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="numericUserId" PartnerClaimType="uid" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="weibo.com" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="displayName" DefaultValue="Weibo User" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="UserId" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateIssuerUserId" /> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/> <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider> <ClaimsProvider>
Задайте client_id идентификатору приложения из регистрации приложения.
Сохраните файл.
Добавить преобразования утверждений
Технический профиль GitHub требует добавления преобразований утверждений CreateIssuerUserId в список ClaimsTransformations. Если в файле нет элемента ClaimsTransformations , добавьте родительские XML-элементы, как показано ниже. Преобразования утверждений также требуют нового типа утверждения, определенного с именем numericUserId.
- Найдите элемент BuildingBlocks . Если элемент не существует, добавьте его.
- Найдите элемент ClaimsSchema . Если элемент не существует, добавьте его.
- Добавьте утверждение numericUserId в элемент ClaimsSchema .
- Найдите элемент ClaimsTransformations . Если элемент не существует, добавьте его.
- Добавьте преобразования утверждений CreateIssuerUserId в элемент ClaimsTransformations.
<BuildingBlocks>
<ClaimsSchema>
<ClaimType Id="numericUserId">
<DisplayName>Numeric user Identifier</DisplayName>
<DataType>long</DataType>
</ClaimType>
</ClaimsSchema>
<ClaimsTransformations>
<ClaimsTransformation Id="CreateIssuerUserId" TransformationMethod="ConvertNumberToStringClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="numericUserId" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="issuerUserId" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
</ClaimsTransformations>
</BuildingBlocks>
Добавить пользовательский сценарий
На этом этапе поставщик удостоверений настроен, но он еще не доступен на любой из страниц входа. Если у вас нет собственного пользовательского пути, создайте дубликат существующего пути пользователя шаблона, в противном случае перейдите к следующему шагу.
- Откройте файлTrustFrameworkBase.xml из начального пакета.
- Найдите и скопируйте все содержимое элемента UserJourney , который включает в себя
Id="SignUpOrSignIn"
. - Откройте TrustFrameworkExtensions.xml и найдите элемент UserJourneys . Если элемент не существует, добавьте его.
- Вставьте все содержимое элемента UserJourney , скопированного в качестве дочернего элемента UserJourneys .
- Переименуйте идентификатор пути пользователя. Например:
Id="CustomSignUpSignIn"
.
Добавьте поставщика удостоверений в путь пользователя
Теперь, когда у вас есть путь пользователя, добавьте нового поставщика идентификации в этот путь. Сначала вы добавляете кнопку входа, а затем связываете кнопку с действием. Действие — это технический профиль, который вы создали ранее.
Найдите элемент шага оркестрации, который включает в себя
Type="CombinedSignInAndSignUp"
илиType="ClaimsProviderSelection"
в процессе работы пользователя. Обычно это первый шаг оркестрации. Элемент ClaimsProviderSelections содержит список поставщиков удостоверений, с которыми пользователь может войти. Порядок элементов определяет порядок кнопок входа, представленных пользователю. Добавьте XML-элемент ClaimsProviderSelection . Задайте для параметра TargetClaimsExchangeId понятное имя.На следующем шаге оркестрации добавьте элемент ClaimsExchange . Установите Id на значение идентификатора целевого обмена утверждениями. Обновите значение TechnicalProfileReferenceId на идентификатор ранее созданного технического профиля.
Следующий XML-код демонстрирует первые два этапа оркестрации взаимодействия пользователя с поставщиком удостоверений:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="WeiboExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="WeiboExchange" TechnicalProfileReferenceId="Weibo-OAuth2" />
</ClaimsExchanges>
</OrchestrationStep>
Настройте политику доверяющей стороны
Политика проверяющей стороны, например SignUpSignIn.xml, указывает пользовательский сценарий, который будет выполнять Azure AD B2C. Найдите элемент DefaultUserJourney в поддерживающей стороне. Обновите ReferenceId, чтобы он соответствовал идентификатору пути пользователя, где вы добавили провайдера идентификации.
В следующем примере для CustomSignUpSignIn
пути пользователя для параметра ReferenceId задано значение CustomSignUpSignIn
:
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
Отправка настраиваемой политики
- Войдите на портал Azure.
- Щелкните значок каталога и подписки на панели инструментов портала, а затем выберите каталог, содержащий клиент Azure AD B2C.
- В портале Azure найдите и выберите Azure AD B2C.
- В разделе "Политики" выберите Identity Experience Framework.
- Выберите " Отправить настраиваемую политику", а затем отправьте два измененных файла политики в следующем порядке: политика расширения, например
TrustFrameworkExtensions.xml
, политика проверяющей стороны, напримерSignUpSignIn.xml
.
Проверка настраиваемой политики
- Выберите политику доверенной стороны, например
B2C_1A_signup_signin
. - Для приложения выберите веб-приложение, которое вы ранее зарегистрировали. В поле URL-адрес ответа должно содержаться значение
https://jwt.ms
. - Нажмите кнопку "Запустить сейчас ".
- На странице регистрации или входа выберите Weibo , чтобы войти с помощью учетной записи Weibo.
Если процесс входа выполнен успешно, браузер перенаправляется на https://jwt.ms
, где отображается содержимое токена, возвращаемого Azure AD B2C.