> ## Documentation Index
> Fetch the complete documentation index at: https://auth0-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Mapper les attributs SAML avec Auth0 comme module complémentaire IdP/SAML

> Fournit des exemples de mappage d’attributs SAML lorsque Auth0 est le fournisseur d’identité.

Par exemple, un utilisateur saisit son nom d’utilisateur et son mot de passe avec succès, mais ne parvient pas à se connecter à l’application alors que les journaux de l’<Tooltip href="/docs/fr-ca/glossary?term=auth0-dashboard" tip="Auth0 Dashboard
Principal produit d’Auth0 pour configurer vos services." cta="Voir le glossaire">Auth0 Dashboard</Tooltip> indiquent des événements de connexion réussis. Ou encore, il manque à votre application des informations sur l’utilisateur telles que le nom ou l’adresse de courriel.

## Cas d’utilisation

Le profil utilisateur ci-dessous est un exemple pour les scénarios suivants.

```javascript lines theme={null}
//SAMPLE IdP User Profile
{
   "created_at": "2021-06-21T13:26:08.579Z",
   "email": "testuser@example.com",
...
   "fav_genre": "fiction",
   "user_metadata": {
       "fav_streaming_service": "hulu"
   }
...
}
```

#### Pas d’objet de mappage

Lors de l’utilisation du module complémentaire SAML2, un objet de mappage vide est généré par défaut.

Dans cet exemple, `fav_genre` et `user_metadata.fav_streaming_service` sont indéfinis mais peuvent être personnalisés et mappés à la réponse <Tooltip href="/docs/fr-ca/glossary?term=security-assertion-markup-language" tip="Security Assertion Markup Language (SAML)
Protocole normalisé permettant à deux parties d’échanger des informations d’authentification sans mot de passe." cta="Voir le glossaire">SAML</Tooltip> remplie par Auth0.

Dans l’exemple ci-dessous, `"fav_genre": « fiction »` est mappé sur l’attribut  [http://schemas.auth0.com/fav\_genre](http://schemas.auth0.com/fav_food) dans la réponse SAML avec la valeur `fiction` alors que `"user_metadata": {"fav_streaming_service": "hulu"}` n’apparaît pas du tout dans la réponse SAML.

Réponse SAML résultante envoyée par l’<Tooltip href="/docs/fr-ca/glossary?term=idp" tip="Fournisseur d’identité (IdP)
Service de stockage et de gestion des identités numériques." cta="Voir le glossaire">IdP</Tooltip> :

```lines theme={null}
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_e30cb5f29249a82846eb" InResponseTo="_e33996d83f953ce46225185b3a1c0ad8" Version="2.0" IssueInstant="2021-11-03T21:34:42.493Z" Destination="https://example-dev-tenant.us.auth0.com/login/callback">
...
       <saml:AttributeStatement xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
           <saml:Attribute Name="http://schemas.auth0.com/fav_genre" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
               <saml:AttributeValue xsi:type="xs:string">
                   fiction
               </saml:AttributeValue>
           </saml:Attribute>
...
       </saml:AttributeStatement>
   </saml:Assertion>
</samlp:Response>
```

#### Exemple de mappage standard

Dans l’exemple précédent, le fait de ne pas personnaliser l’objet de mappage a entraîné l’apparition d’un attribut [http://schemas.auth0.com/fav\_genre](http://schemas.auth0.com/fav_food) dans la réponse SAML, avec la valeur `"fiction"`.

Ensuite, mappez les attributs dans l’objet de mappage des paramètres du module complémentaire SAML2 pour en tenir compte.

Vous remarquerez alors que la valeur `"fiction"` est la même dans la réponse SAML, mais que le nom de l’attribut dans la réponse SAML a été modifié, passant de la valeur par défaut [http://schemas.auth0.com/fav\_fiction](http://schemas.auth0.com/fav_food) à [http://schemas.auth0.com/books](http://schemas.auth0.com/dinner).

Configuration de l’objet de mappage de module complémentaire SAML2 :

```lines theme={null}
"mappings": {
   "fav_genre": "http://schemas.auth0.com/books"
 }
```

Ce mappage donne la réponse suivante :

```lines theme={null}
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_e30cb5f29249a82846eb" InResponseTo="_e33996d83f953ce46225185b3a1c0ad8" Version="2.0" IssueInstant="2021-11-03T21:34:42.493Z" Destination="https://example-dev-tenant.us.auth0.com/login/callback">
...
       <saml:AttributeStatement xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
           <saml:Attribute Name="http://schemas.auth0.com/books" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
               <saml:AttributeValue xsi:type="xs:string">
                   fiction
               </saml:AttributeValue>
           </saml:Attribute>
...
       </saml:AttributeStatement>
   </saml:Assertion>
</samlp:Response>
```

#### Mappage de la même valeur à plusieurs attributs

Dans certains cas, il peut être nécessaire d’associer la réponse SAML à plusieurs attributs ayant la même valeur.

Dans ce cas, il est possible d’associer la même valeur du profil utilisateur à plusieurs attributs dans la réponse SAML.

Comment configurer l’objet de mappage de module complémentaire SAML2 :

```lines theme={null}
"mappings": {
   "fav_genre": [
     "http://schemas.auth0.com/movies",
     "http://schemas.auth0.com/books",
     "http://schemas.auth0.com/television"
   ]
 }
```

Ce mappage donne la réponse suivante :

```lines theme={null}
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ID="_e30cb5f29249a82846eb" InResponseTo="_e33996d83f953ce46225185b3a1c0ad8" Version="2.0" IssueInstant="2021-11-03T21:34:42.493Z" Destination="https://example-dev-tenant.us.auth0.com/login/callback">
...
       <saml:AttributeStatement xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
           <saml:Attribute Name="http://schemas.auth0.com/movies" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
               <saml:AttributeValue xsi:type="xs:string">
                   fiction
               </saml:AttributeValue>
           </saml:Attribute>
           <saml:Attribute Name="http://schemas.auth0.com/books" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
               <saml:AttributeValue xsi:type="xs:string">
                   fiction
               </saml:AttributeValue>
           </saml:Attribute>
           <saml:Attribute Name="http://schemas.auth0.com/television" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
               <saml:AttributeValue xsi:type="xs:string">
                   fiction
               </saml:AttributeValue>
           </saml:Attribute>
...
       </saml:AttributeStatement>
   </saml:Assertion>
</samlp:Response>
```
