Partager via


Transformations de revendications de comptes sociaux

Dans Azure Active Directory B2C (Azure AD B2C), les identités de comptes sociaux sont stockées dans un attribut alternativeSecurityIds d’un type de revendication alternativeSecurityIdCollection. Chaque élément dans le type de revendication alternativeSecurityIdCollection spécifie l’émetteur (nom du fournisseur d’identité, tel que facebook.com), et l’issuerUserId, qui est un identificateur d’utilisateur unique pour l’émetteur.

"alternativeSecurityIds": [{
    "issuer": "google.com",
    "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"
  },
  {
    "issuer": "facebook.com",
    "issuerUserId": "MTIzNDU="
  }]

Cet article fournit des exemples d’utilisation des transformations de revendications de comptes sociaux du schéma Infrastructure d’expérience d’identité dans Azure AD B2C. Pour plus d’informations, voir ClaimsTransformations.

AddItemToAlternativeSecurityIdCollection

Ajoute un AlternativeSecurityId à une revendication alternativeSecurityIdCollection. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim Élément string Revendication à ajouter à la revendication de sortie.
InputClaim collection alternativeSecurityIdCollection Revendication utilisée par la transformation de revendications si disponible dans la stratégie. Si elle est fournie, la transformation de revendications ajoute l’item à la fin de la collection.
OutputClaim collection alternativeSecurityIdCollection Revendication générée une fois que cette transformation de revendications a été appelée. Nouvelle collection contenant les éléments des entrées collection et item.

Exemple de AddItemToAlternativeSecurityIdCollection

L’exemple suivant lie une nouvelle identité sociale à un compte existant. Pour lier une nouvelle identité sociale :

  1. Dans les profils techniques et AAD-UserReadUsingObjectId les AAD-UserReadUsingAlternativeSecurityId profils techniques, affichez la revendication de alternativeSecurityIds l’utilisateur.
  2. Demandez à l’utilisateur à se connecter avec l’un des fournisseurs d’identité qui ne lui sont pas associés.
  3. À l’aide de la transformation de revendications CreateAlternativeSecurityId, créez un type de revendication alternativeSecurityId nommé AlternativeSecurityId2.
  4. Appelez la transformation de revendications AddItemToAlternativeSecurityIdCollection pour ajouter la revendication AlternativeSecurityId2 à la revendication AlternativeSecurityIds existante.
  5. Conservez la revendication alternativeSecurityIds sur le compte d’utilisateur.
<ClaimsTransformation Id="AddAnotherAlternativeSecurityId" TransformationMethod="AddItemToAlternativeSecurityIdCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="AlternativeSecurityId2" TransformationClaimType="item" />
    <InputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
  </OutputClaims>
</ClaimsTransformation>
  • Revendications d’entrée :

    • item :

      {
          "issuer": "facebook.com",
          "issuerUserId": "MTIzNDU="
      }
      
    • collection :

      [
          {
              "issuer": "live.com",
              "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"
          }
      ]
      
  • Revendications de sortie :

    • collection :

      [
          {
              "issuer": "live.com",
              "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"
          },
          {
              "issuer": "facebook.com",
              "issuerUserId": "MTIzNDU="
          }
      ]
      

CreateAlternativeSecurityId

Crée une représentation JSON de la propriété alternativeSecurityId de l’utilisateur qui peut être utilisée dans les appels à Microsoft Entra ID. Découvrez la démonstration en direct de cette transformation de revendication. Pour plus d’informations, voir le schéma AlternativeSecurityId.

Élément TransformationClaimType Type de données Notes
InputClaim key string Revendication spécifiant l’identificateur d’utilisateur unique utilisé par le fournisseur d’identité sociale.
InputClaim IdentityProvider string Revendication spécifiant le nom du fournisseur d’identité de compte social, par exemple facebook.com.
OutputClaim alternativeSecurityId string Revendication générée une fois que la transformation de revendications a été appelée. Contient des informations sur l’identité d’un utilisateur de compte social. issuer est la valeur de la revendication identityProvider. issuerUserId est la valeur de la revendication key au format base64.

Exemple de CreateAlternativeSecurityId

Utilisez cette transformation de revendications pour générer une revendication alternativeSecurityId. Il est utilisé par tous les profils techniques de fournisseur de réseau social, tels que Facebook-OAUTH. La transformation de revendications suivante reçoit l’ID de compte de réseau social de l’utilisateur et le nom du fournisseur d’identité. Le résultat de ce profil technique est un format de chaîne JSON qui peut être utilisé dans les services d'annuaire Microsoft Entra.

<ClaimsTransformation Id="CreateAlternativeSecurityId" TransformationMethod="CreateAlternativeSecurityId">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="issuerUserId" TransformationClaimType="key" />
    <InputClaim ClaimTypeReferenceId="identityProvider" TransformationClaimType="identityProvider" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="alternativeSecurityId" TransformationClaimType="alternativeSecurityId" />
  </OutputClaims>
</ClaimsTransformation>
  • Revendications d’entrée :
    • key: 12334
    • identityProvider: Facebook.com
  • Revendications de sortie :
    • alternativeSecurityId: { "issuer": "facebook.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"}

GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation

Retourne la liste d’émetteurs de la revendication alternativeSecurityIdCollection dans un nouvelle revendication stringCollection. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim alternativeSecurityIdCollection alternativeSecurityIdCollection Revendication à utiliser pour obtenir la liste des fournisseurs d’identité (émetteurs).
OutputClaim identityProvidersCollection stringCollection Revendication générée une fois que cette transformation de revendications a été appelée. Une liste des fournisseurs d’identité associés à la revendication d’entrée.

Exemple de GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation

La transformation de revendications suivante lit la revendication alternativeSecurityIds de l’utilisateur et extrait la liste des noms de fournisseurs d’identité associés à ce compte. Utilisez la sortie identityProvidersCollection pour monter à l’utilisateur la liste des fournisseurs d’identité associés au compte. Ou bien, dans la page de sélection du fournisseur identité, filtrez la liste des fournisseurs d’identité en fonction de la revendication identityProvidersCollection sortie. L’utilisateur peut ainsi choisir de lier une nouvelle identité sociale qui n’est pas encore associée au compte.

<ClaimsTransformation Id="ExtractIdentityProviders" TransformationMethod="GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="alternativeSecurityIds" TransformationClaimType="alternativeSecurityIdCollection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="identityProviders" TransformationClaimType="identityProvidersCollection" />
  </OutputClaims>
</ClaimsTransformation>
  • Revendications d’entrée :

    • alternativeSecurityIdCollection :

      [
          {
              "issuer": "google.com",
              "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"
          },
          {
              "issuer": "facebook.com",
              "issuerUserId": "MTIzNDU="
          }
      ]
      
  • Revendications de sortie :

    • identityProvidersCollection: [ "facebook.com", "google.com" ]

RemoveAlternativeSecurityIdByIdentityProvider

Supprime un AlternativeSecurityId d’une revendication alternativeSecurityIdCollection. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim IdentityProvider string Revendication contenant le nom de fournisseur d’identité à retirer de la collection.
InputClaim collection alternativeSecurityIdCollection Revendication utilisée par la transformation de revendications. La transformation des revendications retire le fournisseur d’identité de la collection.
OutputClaim collection alternativeSecurityIdCollection Revendication générée une fois que cette transformation de revendications a été appelée. Nouvelle collection, après suppression du fournisseur d’identité de la collection.

Exemple de RemoveAlternativeSecurityIdByIdentityProvider

L’exemple suivant dissocie l’une des identités sociales d’un compte existant. Pour dissocier une identité sociale :

  1. Dans les profils techniques et AAD-UserReadUsingObjectId les AAD-UserReadUsingAlternativeSecurityId profils techniques, affichez la revendication de alternativeSecurityIds l’utilisateur.
  2. Demandez à l’utilisateur de sélectionner le compte social à retirer de la liste des fournisseurs d’identité qui luis sont associés.
  3. Appelez un profil technique de transformation de revendications qui appelle la transformation de revendications RemoveAlternativeSecurityIdByIdentityProvider qui a supprimé l’identité sociale sélectionnée, en utilisant le nom du fournisseur d’identité.
  4. Conservez la revendication alternativeSecurityIds sur le compte d’utilisateur.
<ClaimsTransformation Id="RemoveAlternativeSecurityIdByIdentityProvider" TransformationMethod="RemoveAlternativeSecurityIdByIdentityProvider">
    <InputClaims>
        <InputClaim ClaimTypeReferenceId="secondIdentityProvider" TransformationClaimType="identityProvider" />
        <InputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
    </InputClaims>
    <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
    </OutputClaims>
</ClaimsTransformation>
</ClaimsTransformations>
  • Revendications d’entrée :
    • identityProvider: facebook.com
    • collection: [ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" }, { "issuer": "facebook.com", "issuerUserId": "MTIzNDU=" } ]
  • Revendications de sortie :
    • collection: [ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" } ]

Étapes suivantes