Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Начиная с 1 мая 2025 г. Azure AD B2C больше не будет доступен для приобретения для новых клиентов. Дополнительные сведения см. в разделе "Вопросы и ответы".
Прежде чем начать, используйте селектор типа политики в верхней части этой страницы, чтобы выбрать тип политики, которую вы настроите. Azure Active Directory B2C предлагает два метода определения способа взаимодействия пользователей с вашими приложениями: с помощью предопределенных потоков пользователей или полностью настраиваемых пользовательских политик. Действия, которые необходимо выполнить, отличаются для каждого метода.
Предпосылки
- Создайте поток пользователя, чтобы пользователи могли зарегистрироваться и входить в ваше приложение.
- Зарегистрируйте веб-приложение.
- Выполните действия, описанные в статье "Начало работы с настраиваемыми политиками в Active Directory B2C". В этом руководстве описано, как обновить пользовательские файлы политики для использования конфигурации клиента Azure AD B2C.
- Зарегистрируйте веб-приложение.
Создание приложения AD FS
Чтобы включить вход пользователей с учетной записью AD FS в Azure Active Directory B2C (Azure AD B2C), создайте группу приложений в AD FS. Дополнительные сведения см. в статье "Создание веб-приложения с помощью OpenID Connect с AD FS 2016 и более поздних версий"
Чтобы создать группу приложений, выполните следующие действия.
- В диспетчере серверов выберите "Сервис" и выберите "Управление AD FS".
- В разделе "Управление AD FS" щелкните Группы приложений правой кнопкой мыши и выберите Добавить группу приложений.
- На экране приветствия мастера настройки группы приложений:
- Введите имя приложения. Например, приложение Azure AD B2C.
- В разделеClient-Server приложения выберите веб-браузер, который обращается к шаблону веб-приложения .
- Нажмите кнопку Далее.
- На экране собственного приложения мастера групп приложений :
- Скопируйте значение идентификатора клиента. Идентификатор клиента — это идентификатор приложения AD FS. Вам потребуется идентификатор приложения позже в этой статье.
- В поле «URI перенаправления» введите
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
личным доменом. - Нажмите кнопку "Далее", а затем "Далее", а затем еще раз, чтобы завершить работу мастера регистрации приложения.
- Выберите Закрыть.
Настройка утверждений приложения
На этом этапе настройте параметры утверждений в приложении AD FS для передачи в Azure AD B2C.
В группах приложений выберите созданное приложение.
В окне свойств приложения в разделе "Приложения" выберите веб-приложение. Затем нажмите кнопку "Изменить".
Перейдите на вкладку "Правила преобразования выдачи ". Затем нажмите кнопку "Добавить правило".
В шаблоне правила утверждения выберите "Отправить атрибуты LDAP в качестве утверждений", а затем "Далее".
Укажите имя правила утверждения. Для хранилища атрибутов выберите Active Directory, добавьте следующие утверждения.
Атрибут LDAP Тип исходящего утверждения Principal-Name пользователя UPN Фамилия фамилия Given-Name given_name Display-Name имя Обратите внимание, что некоторые имена не будут отображаться в раскрывающемся списке типа исходящих утверждений. Их необходимо ввести вручную (раскрывающийся список можно изменить).
Нажмите Готово.
Нажмите кнопку "Применить" и нажмите кнопку "ОК".
Нажмите кнопку "ОК", чтобы завершить работу.
Настройка AD FS в качестве поставщика удостоверений
Войдите на портал Azure с учетной записью, которая имеет по крайней мере права администратора внешнего поставщика удостоверений .
Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
Выберите все службы в левом верхнем углу портала Azure, а затем найдите и выберите Azure AD B2C.
Выберите поставщики удостоверений и выберите новый поставщик OpenID Connect.
Введите Имя. Например, Contoso.
Для URL-адреса метаданных, введите URL-адрес документа конфигурации AD FS OpenID Connect. Рассмотрим пример.
https://adfs.contoso.com/adfs/.well-known/openid-configuration
Для идентификатора клиента введите идентификатор приложения, записанный ранее.
В поле "Область" введите
openid
.Для типа ответа выберите id_token. Поэтому значение секрета клиента не требуется. Дополнительные сведения об использовании идентификатора клиента и секретного ключа при добавлении универсального поставщика удостоверений OpenID Connect.
(Необязательно) Для указания домена введите
contoso.com
. Дополнительные сведения см. в статье Настройка прямого входа в систему с помощью Azure Active Directory B2C.В разделе сопоставления утверждений поставщика удостоверений выберите следующие утверждения:
-
Идентификатор пользователя:
upn
-
Отображаемое имя:
unique_name
-
Заданное имя:
given_name
-
Фамилия:
family_name
-
Идентификатор пользователя:
Нажмите кнопку "Сохранить".
Добавление поставщика удостоверений AD FS в пользовательский поток
На данный момент поставщик удостоверений AD FS (Contoso) настроен, но ещё не используется ни на одной из страниц входа. Чтобы добавить поставщика удостоверений AD FS в пользовательский поток:
- В клиенте Azure AD B2C выберите потоки пользователей.
- Выберите поток пользователя, в который вы хотите добавить поставщика удостоверений AD FS (Contoso).
- В разделе поставщиков социальной идентичности выберите Contoso.
- Нажмите кнопку "Сохранить".
- Чтобы протестировать вашу политику, выберите Запустить поток пользователя.
- Для приложения выберите веб-приложение с именем testapp1 , которое вы ранее зарегистрировали. В поле URL-адрес ответа должно содержаться значение
https://jwt.ms
. - Нажмите на кнопку Запустить пользовательский поток.
- На странице регистрации или входа выберите Contoso , чтобы войти с помощью учетной записи Contoso.
Если процесс входа выполнен успешно, браузер перенаправляется на https://jwt.ms
, где отображается содержимое токена, возвращаемого Azure AD B2C.
Настройка AD FS в качестве поставщика удостоверений
Чтобы пользователи могли войти с помощью учетной записи AD FS, необходимо определить AD FS в качестве поставщика утверждений, с которым Azure AD B2C может взаимодействовать через конечную точку.
Откройте TrustFrameworkExtensions.xml.
Найдите элемент ClaimsProviders . Если он не существует, добавьте его в корневой элемент.
Добавьте новый ClaimsProvider следующим образом:
<ClaimsProvider> <Domain>contoso.com</Domain> <DisplayName>Contoso</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Contoso-OpenIdConnect"> <DisplayName>Contoso</DisplayName> <Protocol Name="OpenIdConnect" /> <Metadata> <Item Key="METADATA">https://your-adfs-domain/adfs/.well-known/openid-configuration</Item> <Item Key="response_types">id_token</Item> <Item Key="response_mode">form_post</Item> <Item Key="scope">openid</Item> <Item Key="HttpBinding">POST</Item> <Item Key="UsePolicyInRedirectUri">0</Item> <!-- Update the Client ID below to the Application ID --> <Item Key="client_id">Your AD FS application ID</Item> </Metadata> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="upn" /> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" /> <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" /> <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="unique_name" /> <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" /> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" /> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" /> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>
В поле URL-адрес метаданных введите URL-адресдокумента конфигурации AD FS OpenID Connect. Рассмотрим пример.
https://adfs.contoso.com/adfs/.well-known/openid-configuration
Задайте client_id идентификатору приложения из регистрации приложения.
Сохраните файл.
Добавить пользовательский сценарий
На этом этапе поставщик удостоверений настроен, но он еще не доступен на любой из страниц входа. Если у вас нет собственного пользовательского пути, создайте дубликат существующего пути пользователя шаблона, в противном случае перейдите к следующему шагу.
- Откройте файл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="ContosoExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="ContosoExchange" TechnicalProfileReferenceId="Contoso-OpenIdConnect" />
</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
. - Нажмите кнопку "Запустить сейчас ".
- На странице регистрации или входа выберите Contoso , чтобы войти с помощью учетной записи Contoso.
Если процесс входа выполнен успешно, браузер перенаправляется на https://jwt.ms
, где отображается содержимое токена, возвращаемого Azure AD B2C.
Дальнейшие шаги
Узнайте, как передать маркер AD-FS в ваше приложение.