> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Personnaliser les assertions SAML

> Cet article explique comment personnaliser les assertions SAML et les paramètres des protocoles SAML et WS-Fed.

Vous pouvez personnaliser vos assertions <Tooltip href="/docs/fr-CA/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>, ainqi que les paramètres des protocoles SAML et <Tooltip href="/docs/fr-CA/fr-ca/glossary?term=ws-fed" tip="Web Service Federation (WS-Fed)
Protocole de gestion des identités des utilisateurs à travers les domaines." cta="Voir le glossaire">WS-Fed</Tooltip>.

<div id="auth0-as-identity-provider">
  ## Auth0 en tant que fournisseur d’identité
</div>

Personnalisez les assertions SAML lorsque Auth0 agit en tant que fournisseur d’identité en configurant le module complémentaire dans le tableau de bord ou à l’aide de règles.

<div id="use-the-dashboard">
  ### Utiliser le Tableau de bord
</div>

1. Accédez à [Dashboard > Applications > Applications](https://manage.auth0.com/#/applications/\{yourClientId}/addons) et sélectionnez le nom de l’application à afficher.

2. Sélectionnez l’onglet **Modules complémentaires**.

3. Activez la bascule **Application Web SAML2** pour afficher les paramètres et les options.

   <Frame>
     <img src="https://mintcdn.com/generaltranslationinc/9lDbWecp3mLK18lk/docs/images/fr-ca/cdy7uua7fh8z/6dJgYkcOgMZ73HVTkAWt1x/340580795787c0f4455f3f00c89a1719/2025-02-27_13-57-54.png?fit=max&auto=format&n=9lDbWecp3mLK18lk&q=85&s=32b00e3a39294bff18c1b7d30dbfc1b7" alt="Dashboard (Tableau de bord) Applications Applications Onglet Addons (Modules complémentaires) Onglet SAML2 Web App Settings (Paramètres d’application Web SAML2)" width="500" height="615" data-path="docs/images/fr-ca/cdy7uua7fh8z/6dJgYkcOgMZ73HVTkAWt1x/340580795787c0f4455f3f00c89a1719/2025-02-27_13-57-54.png" />
   </Frame>

4. Dans l’onglet **Paramètres**, vous pouvez procéder à divers types de personnalisations, notamment :

   * Préciser une audience autre que l’émetteur par défaut de la requête SAML.
   * Préciser un destinataire.
   * Associer des attributs de profil à des déclarations d’attributs déterminés.
   * Modifier l’algorithme de signature ou de condensé.
   * Préciser si seule l’assertion ou la réponse complète doit être signée.

<div id="use-actions">
  ### Règles d’utilisation
</div>

Vous pouvez utiliser des règles pour ajouter des personnalisations plus étendues ou dynamiques à l’assertion SAML. Les personnalisations effectuées dans les règles écrasent toutes celles qui sont réalisées dans la section **Modules complémentaires de l’application** du tableau de bord.

L’objet `api.samlResponse` permet de remplacer les attributs SAML par défaut ou d’en ajouter de nouveaux.

<div id="example-changing-the-saml-token-lifetime-and-use-upn-as-nameid">
  #### Exemple : Modification de la durée de vie du jeton SAML et utilisation du nom de l’utilisateur principal comme NameID
</div>

```javascript lines theme={null}
exports.onExecutePostLogin = async (event, api) => {
	api.samlResponse.setLifetimeInSeconds(36000);
	if (event.user.upn) {
		api.samlResponse.setAttribute('http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier', 'upn');
	}
};
```

<div id="example-include-user_metadata-attributes-in-an-assertion">
  #### Exemple : Ajout des attributs user\_metadata dans une assertion
</div>

```javascript lines theme={null}
exports.onExecutePostLogin = (event, api) => {
	event.user.user_metadata = event.user.user_metadata || {};
	event.user.user_metadata.color = 'purple';
	api.samlResponse.setAttribute('http://schemas.xmlsoap.org/ws/2005/05/identity/claims/color', event.user.user_metadata.color);
};
```

<div id="saml-assertion-attributes">
  ## Attributs des assertions SAML
</div>

Voici une liste des attributs de personnalisation pour les assertions SAML.

<table class="table">
  <thead>
    <tr>
      <th><strong>Attribut</strong></th>
      <th><strong>Type</strong></th>
      <th><strong>Description</strong></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`audience`</td>
      <td>chaîne</td>
      <td>Public de l’assertion SAML. Par défaut, c’est l’émetteur sur SAMLRequest.</td>
    </tr>

    <tr>
      <td>`recipient`</td>
      <td>chaîne</td>
      <td>Destinataire de l’assertion SAML (`SubjectConfirmationData`). La valeur par défaut est « AssertionConsumerUrl » sur SAMLRequest ou l’URL de rappel si aucune demande SAMLRequest n’a été envoyée.</td>
    </tr>

    <tr>
      <td>`issuer`</td>
      <td>chaîne</td>
      <td>Identifiant unique du fournisseur d’identité SAML, formaté comme une URL.</td>
    </tr>

    <tr>
      <td>`mappings`</td>
      <td>objet</td>
      <td>Mappages entre le profil Auth0 et les attributs de sortie sur l’assertion SAML. Le mappage par défaut est indiqué ci-dessus.</td>
    </tr>

    <tr>
      <td>`createUpnClaim`</td>
      <td>booléen</td>
      <td>La question de savoir si une demande UPN devrait être créée ou non. Valeur par défaut : `true`.</td>
    </tr>

    <tr>
      <td>`passthroughClaimsWithNoMapping`</td>
      <td>booléen</td>
      <td>Si `true` (par défaut), pour chaque demande qui n’est pas mappée au profil commun, Auth0 passe par celles de l’assertion de sortie. Si `false`, ces demandes ne seront pas mappées.</td>
    </tr>

    <tr>
      <td>`mapUnknownClaimsAsIs`</td>
      <td>booléen</td>
      <td>Si `passthroughClaimsWithNoMapping` est `true` et ceci est `false` (par défaut), pour chaque demande non mappée au profil commun, Auth0 ajoute un préfixe `http://schema.auth0.com`. Si `true` Auth0 passera par la demande telle quelle.</td>
    </tr>

    <tr>
      <td>`mapIdentities`</td>
      <td>booléen</td>
      <td>Si `true` (par défaut), iAuth0 ajoute plus d’informations dans le jeton comme le fournisseur (Google, ADFS, AD, etc.) et le jeton d’accès, s’il est disponible.</td>
    </tr>

    <tr>
      <td>`signatureAlgorithm`</td>
      <td>chaîne</td>
      <td>Algorithme de signature pour signer l’assertion ou la réponse SAML. Par défaut, `rsa-sha1`.</td>
    </tr>

    <tr>
      <td>`digestAlgorithm`</td>
      <td>chaîne</td>
      <td>L’algorithme de hachage pour calculer le hachage de l’assertion ou de la réponse SAML. Par défaut `sha1`.</td>
    </tr>

    <tr>
      <td>`destination`</td>
      <td>objet</td>
      <td>Destination de la réponse SAML. Si non spécifié, sera `AssertionConsumerUrl` de SAMLRequest ou de l’URL de rappel s’il n’y avait pas de SAMLRequest.</td>
    </tr>

    <tr>
      <td>`lifetimeInSeconds`</td>
      <td>Entier</td>
      <td>Expiration du jeton. Par défaut, `3600` secondes (1 heure).</td>
    </tr>

    <tr>
      <td>`signResponse`</td>
      <td>booléen</td>
      <td>Si la réponse SAML doit être signée ou non. Par défaut, l’assertion SAML sera signée, mais pas la réponse SAML. Si `true`, la réponse SAML sera signée au lieu de l’assertion SAML.</td>
    </tr>

    <tr>
      <td>`nameIdentifierFormat`</td>
      <td>chaîne</td>
      <td>Par défaut, `urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified`.</td>
    </tr>

    <tr>
      <td>`nameIdentifierProbes`</td>
      <td>tableau</td>
      <td>Auth0 va essayer chacun des attributs de ce tableau dans l’ordre. Si l’un d’entre eux a une valeur, il l’utilisera pour le `Subject/NameID`. L’ordre est : `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier (mappé à partir de user_id)`, `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress (mappé à partir du courriel)`, `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name` (mappé à partir du nom).</td>
    </tr>

    <tr>
      <td>`authnContextClassRef`</td>
      <td>chaîne</td>
      <td>Par défaut, `urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified`.</td>
    </tr>

    <tr>
      <td>`typedAttributes`</td>
      <td>boolean</td>
      <td>Par défaut, `true`. Lorsque défini sur `true`, nous déduisons le `xs:type` de l’élément. Les types sont `xs:chaîne`, `xs:boolean`, `xs:double `et `xs:anyType`. Lorsque défini sur `false`, tous les `xs:type` sont `xs:anyType`.</td>
    </tr>

    <tr>
      <td>`includeAttributeNameFormat`</td>
      <td>booléen</td>
      <td>Par défaut, `true`. Lorsque défini sur `true`, nous déduisons le `NameFormat` en fonction du nom de l’attribut. Les valeurs `NameFormat` sont `urn:oasis:names:tc:SAML:2.0:attrname-format:uri`, `urn:oasis:names:tc:SAML:2.0:attrname-format:basic` et `urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified`. Si défini sur `false`, l’attribut `NameFormat` n’est pas défini dans l’assertion.</td>
    </tr>

    <tr>
      <td>`logout`</td>
      <td>objet</td>
      <td>Contrôle la déconnexion de SAML. Il peut contenir deux propriétés :`callback` (chaîne) qui contient l’URL du service fournisseur (application client) URL du service de déconnexion unique, où Auth0 enverra les demandes et réponses de déconnexion, et `slo_enabled`(boolean) qui contrôle si Auth0 doit informer les fournisseurs de services de la fin de session. La valeur par défaut est `true` (informer les fournisseurs de services).</td>
    </tr>

    <tr>
      <td>`binding`</td>
      <td>chaîne</td>
      <td>Indique éventuellement le protocole de liaison utilisé pour les réponses de connexion SAML. Par défaut, Auth0 utilise `HTTP-POST`, mais vous pouvez passer à `HTTP-Redirect` en définissant `"binding"` sur `"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"`.</td>
    </tr>

    <tr>
      <td>`signingCert`</td>
      <td>chaîne</td>
      <td>Indique éventuellement le certificat de clé publique utilisé pour valider les demandes SAML. Si cette option est activée, les demandes SAML devront être signées. Une valeur d’échantillon serait `"-----BEGIN CERTIFICATE-----\nMIIC8jCCAdqgAwIBAgIJObB6jmhG0QIEMA0GCSqGSIb3DQEBBQUAMCAxHjAcBgNV\n[..toutes les autres lignes..]-----END CERTIFICATE-----\n"`.</td>
    </tr>
  </tbody>
</table>

<div id="learn-more">
  ## En savoir plus
</div>

* [Dépanner des configurations SAML](/docs/fr-CA/fr-ca/troubleshoot/authentication-issues/troubleshoot-saml-configurations)
* [Dépannage des erreurs SAML](/docs/fr-CA/fr-ca/troubleshoot/authentication-issues/saml-errors)
* [Configurer l’authentification unique initiée par le fournisseur d’identité SAML](/docs/fr-CA/fr-ca/authenticate/protocols/saml/saml-sso-integrations/identity-provider-initiated-single-sign-on)
