BuildingBlocks

Примечание

В Azure Active Directory B2C пользовательские политики преимущественно предназначены для выполнения сложных сценариев. В большинстве случаев рекомендуется использовать встроенные пользовательские потоки. Ознакомьтесь со статьей Начало работы с настраиваемыми политиками в Azure Active Directory B2C, чтобы узнать о базовом пакете настраиваемых политик, если еще не сделали этого.

Элемент BuildingBlocks добавляется внутри элемента TrustFrameworkPolicy.

<TrustFrameworkPolicy
  xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
  xmlns:xsd="https://www.w3.org/2001/XMLSchema"
  xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
  PolicySchemaVersion="0.3.0.0"
  TenantId="mytenant.onmicrosoft.com"
  PolicyId="B2C_1A_TrustFrameworkBase"
  PublicPolicyUri="http://mytenant.onmicrosoft.com/B2C_1A_TrustFrameworkBase">

  <BuildingBlocks>
    <ClaimsSchema>
      ...
    </ClaimsSchema>
    <Predicates>
    ...
    </Predicates>
    <PredicateValidations>
    ...
    </PredicateValidations>
    <ClaimsTransformations>
      ...
    </ClaimsTransformations>
    <ContentDefinitions>
      ...
    </ContentDefinitions>
    <Localization>
      ...
    </Localization>
    <DisplayControls>
      ...
    </DisplayControls>
 </BuildingBlocks>

Элемент BuildingBlocks содержит следующие элементы, которые необходимо указывать в заданном порядке:

  • Элемент ClaimsSchema определяет типы утверждений, на которые можно ссылаться в рамках политики. Схема утверждений — это область, в которой объявляются типы утверждений. Тип утверждения аналогичен переменной во многих языках программирования. Вы можете использовать тип утверждения для сбора данных от пользователя приложения, получения утверждений от поставщиков удостоверений социальных сетей, отправки и получения данных из настраиваемого интерфейса REST API или хранения внутренних данных, используемых для настраиваемой политики.

  • Элементы Predicates и PredicateValidationReference позволяют выполнять процесс проверки, чтобы обеспечить ввод в утверждение только правильно сформированных данных.

  • Элемент ClaimsTransformations содержит список преобразований утверждений, которые могут применяться в политике. Преобразование утверждений преобразует одно утверждение в другое. В преобразовании утверждений необходимо задать метод преобразования, например:

    • Изменение регистра строкового утверждения. Например, изменение регистра строки с нижнего на верхний.
    • Если в результате сравнения двух утверждений возвращается значение true, утверждения совпадают. В противном случае возвращается значение false.
    • Создание строкового утверждения на основе предоставленного параметра в политике.
    • Создание случайной строки с помощью генератора случайных чисел.
    • Форматирование утверждения в соответствии с указанным форматом строки. Это преобразование использует метод C# String.Format.
  • InputValidation — этот элемент дает возможность выполнять логическое агрегирование, схожее с and и or.

  • Элемент ContentDefinitions содержит URL-адреса шаблонов HTML5 для использования в пути взаимодействия пользователя. В настраиваемой политике определение содержимого определяет универсальный код ресурса (URI) страницы HTML5, используемой для данного шага пути взаимодействия пользователя. например для входа или регистрации, сброса пароля или страниц ошибок. Внешний вид можно изменить с помощью переопределения LoadUri для файла HTML5. Вы также можете создать новые определения содержимого в соответствии с потребностями. Этот элемент может содержать ссылку на локализованные ресурсы с использованием идентификатора локализации.

  • Элемент Localization предусматривает поддержку нескольких языков. Поддержка локализации в политиках позволяет настроить список поддерживаемых языков в политике и выбрать язык по умолчанию. Также поддерживаются языковые строки и коллекции.

  • DisplayControls — определяет элементы управления, отображаемые на странице. Элементы управления отображением имеют особые функции и взаимодействуют с серверными техническими профилями проверки.