Пользовательские политики в Azure Active Directory B2CCustom policies in Azure Active Directory B2C

Примечание

В Azure Active Directory B2C пользовательские политики преимущественно предназначены для выполнения сложных сценариев.In Azure Active Directory B2C, custom policies are designed primarily to address complex scenarios. В большинстве случаев рекомендуется использовать встроенные пользовательские потоки.For most scenarios, we recommend that you use built-in user flows.

Настраиваемые политики — это файлы конфигурации, определяющие поведение вашего клиента Azure Active Directory B2C (Azure AD B2C).Custom policies are configuration files that define the behavior of your Azure Active Directory B2C (Azure AD B2C) tenant. Потоки пользователей предопределены на портале Azure AD B2C для наиболее распространенных задач идентификации.User flows are predefined in the Azure AD B2C portal for the most common identity tasks. Разработчик удостоверений может полностью изменять пользовательские политики для выполнения большого количества задач.Custom policies can be fully edited by an identity developer to complete many different tasks.

Сравнение потоков пользователей и пользовательских политикComparing user flows and custom policies

КонтекстContext Маршруты пользователейUser flows Пользовательские политикиCustom policies
Целевые пользователиTarget users Все разработчики приложений имеют или не имеют опыт работы с удостоверениями.All application developers with or without identity expertise. Специалисты по удостоверениям, системные интеграторы, консультанты и внутренние команды по работе с удостоверениями.Identity pros, systems integrators, consultants, and in-house identity teams. Они хорошо знакомы с потоками подключения OpenID Connect и понимают поставщиков удостоверений и проверки подлинности на основе утверждений.They are comfortable with OpenID Connect flows and understand identity providers and claims-based authentication.
Метод настройкиConfiguration method Портал Azure с удобным пользовательским интерфейсом.Azure portal with a user-friendly user-interface (UI). Непосредственное изменение XML-файлов и их отправка на портал Azure.Directly editing XML files and then uploading to the Azure portal.
Настройка пользовательского интерфейсаUI customization Полная настройка пользовательского интерфейса, включая HTML, CSS и JavaScript.Full UI customization including HTML, CSS and JavaScript.

Поддержка нескольких языков для пользовательских строк.Multilanguage support with Custom strings.
АналогичноSame
Настройка атрибутовAttribute customization Стандартные и пользовательские атрибуты.Standard and custom attributes. АналогичноSame
Управление токенами и сеансамиToken and session management Пользовательский маркер и несколько параметров сеанса.Custom token and multiple session options. АналогичноSame
Поставщики удостоверенийIdentity Providers Стандартный поставщик услуг для местного или социальных сетей и большинство поставщиков удостоверений OIDC, например Федерация с клиентами Azure Active Directory.Predefined local or social provider and most OIDC identity providers, such as federation with Azure Active Directory tenants. OIDC, SAML, OAuth в соответствии со стандартами.Standards-based OIDC, OAUTH, and SAML. Проверка подлинности также возможна с помощью интеграции с API-интерфейсами RESTFUL.Authentication is also possible by using integration with REST APIs.
Задачи, связанные с удостоверениямиIdentity Tasks Регистрация или вход в систему с помощью локальных учетных записей или учетных записей разных социальных сетей.Sign-up or sign-in with local or many social accounts.

Самостоятельный сброс пароля.Self-service password reset.

Изменение профиля.Profile edit.

Многофакторная проверка подлинности.Multi-Factor Authentication.

Настройка маркеров и сеансов.Customize tokens and sessions.

Потоки маркера доступа.Access token flows.
Выполняют те же задачи, что и потоки пользователей, с помощью пользовательских поставщиков удостоверений или настраиваемых областей.Complete the same tasks as user flows using custom identity providers or use custom scopes.

Подготовка учетной записи пользователя в другой системе во время регистрации.Provision a user account in another system at the time of registration.

Отправка приветственного сообщения почты с помощью поставщика услуг электронной почты.Send a welcome email using your own email service provider.

Использование пользовательского хранилища за пределами Azure AD B2C.Use a user store outside Azure AD B2C.

Проверка предоставленной пользователями информации с помощью доверенной системы с использованием API.Validate user provided information with a trusted system by using an API.

Файлы политикиPolicy files

Используются три вида файлов политик:These three types of policy files are used:

  • Базовый файл. Содержит большинство определений.Base file - contains most of the definitions. Рекомендуется вносить минимальное число изменений в этот файл, чтобы упростить устранение неполадок и долгосрочное обслуживание ваших политик.It is recommended that you make a minimum number of changes to this file to help with troubleshooting, and long-term maintenance of your policies.
  • Файл расширения. Содержит уникальную конфигурацию вашего клиента.Extensions file - holds the unique configuration changes for your tenant.
  • Файл проверяющей стороны. Однозадачный файл, который может вызвать непосредственно приложение или служба (т. е. проверяющая сторона).Relying Party (RP) file - The single task-focused file that is invoked directly by the application or service (also, known as a Relying Party). Каждой уникальной задаче требуется собственный файл проверяющей стороны. В зависимости от требований к фирменной символике их число может быть выражено как "общее число приложений х общее число вариантов использования".Each unique task requires its own RP and depending on branding requirements, the number might be "total of applications x total number of use cases."

Потоки пользователей в Azure AD B2C следовать приведенному выше шаблону файла, но разработчик видит только файл RP, а портал Azure вносит изменения в фоновом режиме в файл расширений.User flows in Azure AD B2C follow the file pattern depicted above, but the developer only sees the RP file, while the Azure portal makes changes in the background to the extensions file.

Хотя существует три типа файлов политик, вы не ограничены только тремя файлами.Although there are three types of policy files, you aren't restricted to only three files. У вас может быть несколько файлов для каждого типа файлов.You may have multiple files of each file type. Например, если вы не хотите вносить изменения в файл расширений, можно создать файл Extensions2, чтобы расширить файл расширений.For example, if you don't want to make changes to your Extensions file, you can create an Extensions2 file to further extend the Extensions file.

Ключевые понятия пользовательской политикиCustom policy core concepts

Служба управления удостоверениями и доступом клиентов (CIAM) в Azure включает в себя:The customer identity and access management (CIAM) service in Azure includes:

  • Пользовательский каталог, который доступен через Microsoft Graph. В нем содержатся данные пользователя для локальных и федеративных учетных записей.A user directory that is accessible by using Microsoft Graph and which holds user data for both local accounts and federated accounts.
  • Доступ к Identity Experience Framework, которая управляет доверием между пользователями и сущностями и обменивается утверждениями между ними для выполнения задач управления удостоверениями и доступом.Access to the Identity Experience Framework that orchestrates trust between users and entities and passes claims between them to complete an identity or access management task.
  • Служба маркеров безопасности (STS), которая выдает маркеры удостоверений, маркеры обновления и маркеры доступа (и эквивалентные утверждения SAML) и проверяет их для защиты ресурсов.A security token service (STS) that issues ID tokens, refresh tokens, and access tokens (and equivalent SAML assertions) and validates them to protect resources.

Azure AD B2C взаимодействует с поставщиками удостоверений, пользователями, другими системами и локальным каталогом в определенной последовательности, чтобы обеспечить задачу идентификации.Azure AD B2C interacts with identity providers, users, other systems, and with the local user directory in sequence to achieve an identity task. Например, выполнение входа, регистрация нового пользователя или сброс пароля.For example, sign in a user, register a new user, or reset a password. Identity Experience Framework и политика (которая также называется путем взаимодействия пользователя или инфраструктурой доверия) устанавливают доверие между несколькими участниками и явно определяет субъекты, действия, протоколы и выполняемую последовательность шагов.The Identity Experience Framework and a policy (also called a user journey or a trust framework policy) establishes multi-party trust and explicitly defines the actors, the actions, the protocols, and the sequence of steps to complete.

Инфраструктура процедур идентификации — это полностью настраиваемая, основанная на политиках облачная платформа Azure, которая управляет доверием между сущностями в стандартных форматах протоколов, таких как OpenID Connect Connect, OAuth, SAML и несколько нестандартных форматов, например, для обмена утверждениями типа "система — система" на основе REST API.The Identity Experience Framework is a fully configurable, policy-driven, cloud-based Azure platform that orchestrates trust between entities in standard protocol formats such as OpenID Connect, OAuth, SAML, and a few non-standard ones, for example REST API-based system-to-system claims exchanges. Эта платформа обеспечивает удобные возможности с поддержкой HTML и CSS.The framework creates user-friendly, white-labeled experiences that support HTML and CSS.

Пользовательские политики представлены одним или несколькими XML-файлами, которые ссылаются друг на друга в иерархической цепочке.A custom policy is represented as one or several XML-formatted files that refer to each other in a hierarchical chain. Элементы XML определяют схему утверждений, преобразования утверждений, определения содержимого, поставщиков утверждений, технические профили и шаги оркестрации пути взаимодействия пользователя, а также другие элементы.The XML elements define the claims schema, claims transformations, content definitions, claims providers, technical profiles, and user journey orchestration steps, among other elements. Пользовательская политика доступна в виде одного или нескольких XML-файлов, которые выполняются Identity Experience Framework при вызове проверяющей стороной.A custom policy is accessible as one or several XML files that are executed by the Identity Experience Framework when invoked by a relying party. Разработчики, которые настраивают пользовательские политики, должны точно и подробно определить отношения доверия, чтобы добавить конечные точки метаданных, точные определения обмена утверждениями и настроить секретные данные, ключи и сертификаты, отличающиеся в зависимости от поставщика удостоверений.Developers configuring custom policies must define the trusted relationships in careful detail to include metadata endpoints, exact claims exchange definitions, and configure secrets, keys, and certificates as needed by each identity provider.

Модель наследованияInheritance model

Когда приложение вызывает файл политики проверяющей стороны, Identity Experience Framework в Azure AD B2C добавит все элементы из базового файла, затем из файла расширений и, наконец, из файла политики проверяющей стороны, чтобы создать действующую политику.When an application calls the RP policy file, the Identity Experience Framework in Azure AD B2C adds all of the elements from base file, from the extensions file, and then from the RP policy file to assemble the current policy in effect. Элементы одного и того же типа и имени в файле проверяющей стороны будут переопределять те, что находятся в файле расширений, а последние переопределят значения в базовом файле.Elements of the same type and name in the RP file will override those in the extensions, and extensions overrides base.

Дальнейшие действияNext steps