TrustFrameworkPolicy

注意

Azure Active Directory B2C で、カスタム ポリシーは、主に、複雑なシナリオに取り組む用途向けに設計されています。 ほとんどのシナリオで、組み込みユーザー フローを使用することをお勧めします。 まだ行っていない場合は、Active Directory B2C でのカスタム ポリシーの概要に関する記事で、カスタム ポリシー スターター パックの詳細を確認してください。

カスタム ポリシーは、階層型チェーンで互いを参照する 1 つ以上の 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 いいえ Azure Active Directory B2C (Azure AD B2C) テナントの一意のオブジェクト識別子。
TenantId はい このポリシーが属するテナントの一意の識別子。
PolicyId はい ポリシーの一意識別子。 この識別子には、プレフィックスとして B2C_1A_ を付ける必要があります。
PublicPolicyUri はい ポリシーの URI。テナント ID とポリシー ID の組み合わせです。
DeploymentMode いいえ 指定できる値: Production または DevelopmentProduction は既定値です。 このプロパティを使用して、ポリシーをデバッグします。 詳細については、「ログの収集」を参照してください。
UserJourneyRecorderEndpoint いいえ ログ記録に使用されるエンドポイント。 属性が存在する場合は、値を 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 要素には、次の要素が含まれます。

要素 発生回数 説明
BasePolicy 0:1 基本ポリシーの識別子。
BuildingBlocks 0:1 ポリシーの構成要素。
ClaimsProviders 0:1 クレーム プロバイダーのコレクション。
UserJourneys 0:1 ユーザー体験のコレクション。
SubJourneys 0:1 サブ体験のコレクション。
RelyingParty 0:1 証明書利用者ポリシーの定義。

別のポリシーからポリシーを継承するには、ポリシー ファイルの TrustFrameworkPolicy 要素の下で BasePolicy 要素を宣言する必要があります。 BasePolicy 要素は、このポリシーの派生元である base ポリシーへの参照です。

出現回数は、 親要素が持つことができる子要素の数を指します。また、次のものが必要です。

  • 0:1 は、親要素に 0 個または 1 個の子要素があることを意味します。
  • 1:1 は、親要素に 1 つの子要素が必要であることを意味します。
  • 1:n は、親要素に 1 つまたは複数の子要素が必要であることを意味します。
  • 0:n は、親要素に 0 個または任意の数の要素を含めることができることを意味します。

BasePolicy 要素には、次の要素が含まれています。

要素 発生回数 説明
TenantId 1:1 Azure AD B2C テナントの識別子。
PolicyId 1:1 親ポリシーの識別子。

次の例は、base ポリシーを指定する方法を示しています。 この 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>