ClaimsTransformations

Poznámka

V Azure Active Directory B2C jsou vlastní zásady navržené primárně tak, aby řešily složité scénáře. U většiny scénářů doporučujeme používat předdefinované toky uživatelů. Pokud jste to ještě neudělali, přečtěte si o úvodním balíčku vlastních zásad v tématu Začínáme s vlastními zásadami v Active Directory B2C.

Element ClaimsTransformations obsahuje seznam transformačních funkcí deklarací identity, které lze použít v uživatelských cestách jako součást vlastních zásad. Transformace deklarací identity převede danou deklaraci identity na jinou. V transformaci deklarací identity zadáte metodu transformace, například přidání položky do kolekce řetězců nebo změna velikosti písmen řetězce.

Chcete-li zahrnout seznam transformačních funkcí deklarací identity, které lze použít v cestách uživatele, musí být deklarován element Xml ClaimsTransformations v části BuildingBlocks zásad.

<ClaimsTransformations>
  <ClaimsTransformation Id="<identifier>" TransformationMethod="<method>">
    ...
  </ClaimsTransformation>
</ClaimsTransformations>

Element ClaimsTransformation obsahuje následující atributy:

Atribut Povinné Popis
Id Yes Identifikátor, který se používá k jedinečné identifikaci transformace deklarace identity. Na identifikátor se odkazuje z jiných elementů XML v zásadách.
TransformaceMethod Yes Metoda transformace, která se má použít v transformaci deklarací identity. Každá transformace deklarací identity má své vlastní hodnoty. Úplný seznam dostupných hodnot najdete v referenčních informacích k transformaci deklarací identity .

Deklarace identityTransformation

Element ClaimsTransformation obsahuje následující prvky:

<ClaimsTransformation Id="<identifier>" TransformationMethod="<method>">
  <InputClaims>
    ...
  </InputClaims>
  <InputParameters>
    ...
  </InputParameters>
  <OutputClaims>
    ...
  </OutputClaims>
</ClaimsTransformation>
Prvek Výskyty Description
InputClaims 0:1 Seznam elementů InputClaim , které určují typy deklarací identity, které se považují za vstup transformace deklarací identity. Každý z těchto prvků obsahuje odkaz na typ ClaimType, který je již definován v části ClaimsSchema v zásadách.
Inputparameters 0:1 Seznam elementů InputParameter , které jsou poskytovány jako vstup pro transformaci deklarací identity.
OutputClaims 0:1 Seznam outputClaim elementy, které určují typy deklarací, které jsou vytvořeny po vyvolání ClaimsTransformation. Každý z těchto prvků obsahuje odkaz na ClaimType již definovaný v části ClaimsSchema.

InputClaims

Element InputClaims obsahuje následující prvek:

Prvek Výskyty Popis
InputClaim 1:n Očekávaný typ vstupní deklarace identity.

InputClaim

Element InputClaim obsahuje následující atributy:

Atribut Povinné Popis
ClaimTypeReferenceId Yes Odkaz na Typ deklarace identity, který je již definován v části ClaimsSchema v zásadách.
TransformationClaimType Yes Identifikátor odkazuje na typ deklarace identity transformace. Každá transformace deklarací identity má své vlastní hodnoty. Úplný seznam dostupných hodnot najdete v referenčních informacích k transformaci deklarací identity .

Inputparameters

Element InputParameters obsahuje následující prvek:

Prvek Výskyty Popis
InputParameter 1:n Očekávaný vstupní parametr.

InputParameter

Atribut Povinné Popis
Id Yes Identifikátor, který odkazuje na parametr metody transformace deklarací identity. Každá metoda transformace deklarací identity má své vlastní hodnoty. Úplný seznam dostupných hodnot najdete v tabulce transformace deklarací identity.
DataType Yes Typ dat parametru, například String, Boolean, Int nebo DateTime podle výčtu DataType ve schématu XML vlastních zásad. Tento typ se používá ke správnému provádění aritmetických operací. Každá transformace deklarací identity má své vlastní hodnoty. Úplný seznam dostupných hodnot najdete v referenčních informacích k transformaci deklarací identity .
Hodnota Yes Hodnota, která je doslovně předána transformaci. Některé hodnoty jsou libovolné, některé z nich vyberete z metody transformace deklarací identity.

OutputClaims

Element OutputClaims obsahuje následující prvek:

Prvek Výskyty Popis
OutputClaim 0:n Očekávaný typ výstupní deklarace identity.

OutputClaim

Element OutputClaim obsahuje následující atributy:

Atribut Povinné Popis
Id deklarace identity Yes Odkaz na typ ClaimType, který je již definován v části ClaimsSchema zásad.
TransformationClaimType Yes Identifikátor odkazuje na typ deklarace identity transformace. Každá transformace deklarací identity má své vlastní hodnoty. Úplný seznam dostupných hodnot najdete v referenčních informacích k transformaci deklarací identity .

Vstupní a výstupní deklarace identity používané při transformaci deklarací identity musí být odlišné. Stejnou vstupní deklaraci identity nelze použít jako výstupní deklaraci identity.

Příklad

Můžete například uložit poslední verzi svých podmínek služeb, které uživatel přijal. Když aktualizujete podmínky služeb, můžete uživatele požádat o přijetí nové verze. V následujícím příkladu transformace deklarací identity HasTOSVersionChanged porovná hodnotu deklarace tosVersion s hodnotou deklarace identity LastTOSAcceptedVersion a pak vrátí logická deklarace TOSVersionChanged .

<BuildingBlocks>
  <ClaimsSchema>
    <ClaimType Id="TOSVersionChanged">
      <DisplayName>Indicates if the TOS version accepted by the end user is equal to the current version</DisplayName>
      <DataType>boolean</DataType>
    </ClaimType>
    <ClaimType Id="TOSVersion">
      <DisplayName>TOS version</DisplayName>
      <DataType>string</DataType>
    </ClaimType>
    <ClaimType Id="LastTOSAcceptedVersion">
      <DisplayName>TOS version accepted by the end user</DisplayName>
      <DataType>string</DataType>
    </ClaimType>
  </ClaimsSchema>

  <ClaimsTransformations>
    <ClaimsTransformation Id="HasTOSVersionChanged" TransformationMethod="CompareClaims">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="TOSVersion" TransformationClaimType="inputClaim1" />
        <InputClaim ClaimTypeReferenceId="LastTOSAcceptedVersion" TransformationClaimType="inputClaim2" />
      </InputClaims>
      <InputParameters>
        <InputParameter Id="operator" DataType="string" Value="NOT EQUAL" />
      </InputParameters>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="TOSVersionChanged" TransformationClaimType="outputClaim" />
      </OutputClaims>
    </ClaimsTransformation>
  </ClaimsTransformations>
</BuildingBlocks>

Referenční informace k transformacím deklarací identity

Příklady transformací deklarací identity najdete na následujících referenčních stránkách: