Udostępnij za pośrednictwem


Przekształcenia oświadczeń ogólnych

Ten artykuł zawiera przykłady użycia ogólnych przekształceń oświadczeń zasad niestandardowych usługi Azure Active Directory B2C (Azure AD B2C). Aby uzyskać więcej informacji, zobacz przekształcenia oświadczeń.

CopyClaim

Skopiuj wartość oświadczenia do innego. Oba oświadczenia muszą pochodzić z tego samego typu. Zapoznaj się z pokazem live tej transformacji oświadczeń.

Element TransformationClaimType Typ danych Uwagi
InputClaim inputClaim ciąg, int Typ oświadczenia, który ma zostać skopiowany.
OutputClaim outputClaim string, int Oświadczenie, które jest generowane po wywołaniu tej transformacji oświadczeń.

Użyj tego przekształcenia oświadczeń, aby skopiować wartość z oświadczenia ciągowego lub liczbowego do innego oświadczenia. Poniższy przykład kopiuje wartość oświadczenia externalEmail do oświadczenia e-mail.

<ClaimsTransformation Id="CopyEmailAddress" TransformationMethod="CopyClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="externalEmail" TransformationClaimType="inputClaim"/>
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="outputClaim"/>
  </OutputClaims>
</ClaimsTransformation>

Przykład funkcji CopyClaim

  • Oświadczenia wejściowe:
    • inputClaim: bob@contoso.com
  • Oświadczenia wyjściowe:
    • outputClaim: bob@contoso.com

CzyClaimExist

Sprawdza, czy oświadczenie wejściowe istnieje, i ustawia oświadczenie wyjściowe na true lub false odpowiednio. Check out the Live demo of this claims transformation.

Element TransformationClaimType Typ danych Uwagi
InputClaim inputClaim Dowolne Oświadczenie wejściowe, którego istnienie musi zostać zweryfikowane.
OutputClaim outputClaim boolean The claim that is produced after this claims transformation has been invoked.

Przykład funkcji DoesClaimExist

Użyj tego przekształcenia oświadczeń, aby sprawdzić, czy oświadczenie istnieje lub zawiera dowolną wartość. Wartość zwracana jest wartością logiczną wskazującą, czy oświadczenie istnieje. Poniższy przykład sprawdza, czy adres e-mail istnieje.

<ClaimsTransformation Id="CheckIfEmailPresent" TransformationMethod="DoesClaimExist">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="isEmailPresent" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Input claims:
    • inputClaim: someone@contoso.com
  • Output claims:
    • outputClaim: true

Skrót

Skrót podanego zwykłego tekstu przy użyciu soli i wpisu tajnego. Używany algorytm wyznaczania skrótu to SHA-256. Check out the Live demo of this claims transformation.

Element TransformationClaimType Typ danych Uwagi
InputClaim Postaci zwykłego tekstu ciąg Oświadczenie wejściowe do szyfrowania
InputClaim Soli ciąg Parametr soli. Możesz utworzyć wartość losową przy użyciu CreateRandomString przekształcenia oświadczeń.
Inputparameter randomizerSecret ciąg Wskazuje istniejący klucz zasad Azure AD B2C. Aby utworzyć nowy klucz zasad: w dzierżawie usługi Azure AD B2C w obszarze Zarządzanie wybierz pozycję Struktura środowiska tożsamości. Wybierz pozycję Klucze zasad , aby wyświetlić klucze dostępne w dzierżawie. Wybierz pozycję Dodaj. W obszarze Opcje wybierz pozycję Ręczne. Podaj nazwę (prefiks B2C_1A_ może zostać dodany automatycznie). W polu tekstowym Wpis tajny wprowadź dowolny wpis tajny, którego chcesz użyć, na przykład 1234567890. W obszarze Użycie klucza wybierz pozycję Podpis. Wybierz przycisk Utwórz.
OutputClaim hash ciąg The claim that is produced after this claims transformation has been invoked. Oświadczenie skonfigurowane w elemecie plaintext inputClaim.

Przykład skrótu

W poniższym przykładzie pokazano, jak utworzyć skrót adresu e-mail. Przekształcenie oświadczeń dodaje sól do adresu e-mail przed skrótem wartości. Aby wywołać tę transformację oświadczeń, ustaw wartość mySalt oświadczenia na oświadczenie.

<ClaimsTransformation Id="HashPasswordWithEmail" TransformationMethod="Hash">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="plaintext" />
    <InputClaim ClaimTypeReferenceId="mySalt" TransformationClaimType="salt" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="randomizerSecret" DataType="string" Value="B2C_1A_AccountTransformSecret" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="hashedEmail" TransformationClaimType="hash" />
  </OutputClaims>
</ClaimsTransformation>
  • Input claims:
    • zwykły tekst: someone@contoso.com
    • sól: 487624568
    • randomizerSecret: B2C_1A_AccountTransformSecret
  • Output claims:
    • outputClaim: CdMNb/KTEfsWzh9MR1kQGRZCKjuxGMWhA5YQNihzV6U=

Następne kroki