TrustFrameworkPolicy

Примечание.

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

Пользовательские политики представлены одним или несколькими XML-файлами, которые ссылаются друг на друга в иерархической цепочке. XML-элементы определяют элементы политики, такие как схема утверждений, преобразования утверждений, определения содержимого, поставщики утверждений, технические профили, путь взаимодействия пользователя и шаги оркестрации. Каждый файл политики определяется внутри элемента верхнего уровня 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="yourtenant.onmicrosoft.com"
  PolicyId="B2C_1A_TrustFrameworkBase"
  PublicPolicyUri="http://yourtenant.onmicrosoft.com/B2C_1A_TrustFrameworkBase">
  ...

Элемент TrustFrameworkPolicy содержит следующие атрибуты:

Атрибут Обязательное поле Описание
PolicySchemaVersion Да Версия схемы, которая будет использоваться для выполнения политики. Значение должно быть 0.3.0.0.
TenantObjectId No Уникальный идентификатор объекта арендатора Azure Active Directory B2C (Azure AD B2C).
TenantId Да Уникальный идентификатор арендатора, к которому относится эта политика.
PolicyId Да Уникальный идентификатор политики. Этот идентификатор должен начинаться с префикса B2C_1A_
PublicPolicyUri Да Универсальный код ресурса (URI) для политики, который является сочетанием идентификатора арендатора и идентификатора политики.
DeploymentMode No Возможные значения: Production или Development. Значение по умолчанию — Production. Это свойство используется при отладке политики. Дополнительные сведения см. в статье о сборе журналов.
UserJourneyRecorderEndpoint No Конечная точка для ведения журнала. Это значение является обязательным, если существует атрибут urn:journeyrecorder:applicationinsights. Дополнительные сведения см. в статье о сборе журналов.

В следующем примере показано, как указать элемент 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="yourtenant.onmicrosoft.com"
   PolicyId="B2C_1A_TrustFrameworkBase"
   PublicPolicyUri="http://yourtenant.onmicrosoft.com/B2C_1A_TrustFrameworkBase">

Элемент TrustFrameworkPolicy содержит следующие элементы:

Элемент Вхождения Description
BasePolicy 00:14 Идентификатор базовой политики.
BuildingBlocks; 00:14 Строительные блоки политики.
ClaimsProviders; 00:14 Коллекция поставщиков утверждений.
UserJourneys; 00:14 Коллекция путей взаимодействия пользователя.
SubJourneys 00:14 Коллекция вложенных путей взаимодействия пользователя.
RelyingParty. 00:14 Определение политики проверяющей стороны.

Чтобы наследовать политику от другой политики, необходимо объявить элемент BasePolicy в элементе TrustFrameworkPolicy файла политики. Элемент BasePolicy представляет собой ссылку на базовую политику, на основе которой создается эта политика.

Вхождения относятся к числу дочерних элементов, которые родительский элемент может иметь или должны иметь:

  • 0:1 означает, что родительский элемент имеет ноль или один дочерний элемент.
  • 1:1 означает, что родительский элемент должен иметь один дочерний элемент.
  • 1:n означает, что родительский элемент должен иметь один или несколько дочерних элементов.
  • 0:n означает, что родительский элемент может иметь нулевое или любое количество элементов.

В элементе BasePolicy содержатся следующие элементы:

Элемент Вхождения Description
TenantId 1:1 Идентификатор арендатора Azure AD B2C.
PolicyId 1:1 Идентификатор родительской политики.

В следующем примере показано, как задать базовую политику. Политика B2C_1A_TrustFrameworkExtensions является производной от B2C_1A_TrustFrameworkBase.

<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="yourtenant.onmicrosoft.com"
   PolicyId="B2C_1A_TrustFrameworkExtensions"
   PublicPolicyUri="http://yourtenant.onmicrosoft.com/B2C_1A_TrustFrameworkExtensions">

  <BasePolicy>
    <TenantId>yourtenant.onmicrosoft.com</TenantId>
    <PolicyId>B2C_1A_TrustFrameworkBase</PolicyId>
  </BasePolicy>
  ...
</TrustFrameworkPolicy>