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

> Découvrez le fonctionnement des initiateurs de la déconnexion OIDC par canal arrière et comment les configurer pour votre ou vos applications.

# Initiateurs de la déconnexion OIDC par canal arrière

export const AuthCodeBlock = ({filename, icon, language, highlight, children}) => {
  const [displayText, setDisplayText] = useState(children);
  const [copyText, setCopyText] = useState(children);
  const wrapperRef = React.useRef(null);
  useEffect(() => {
    let unsubscribe = null;
    function init() {
      if (!window.autorun || !window.rootStore) {
        return;
      }
      unsubscribe = window.autorun(() => {
        let processedChildrenForDisplay = children;
        let processedChildrenForCopy = children;
        for (const [key, value] of window.rootStore.variableStore.values.entries()) {
          const escapedKey = key.replaceAll(/[.*+?^${}()|[\]\\]/g, (String.raw)`\$&`);
          let displayValue = value;
          if (key === "{yourClientSecret}" && value !== "{yourClientSecret}") {
            displayValue = value.substring(0, 3) + "*****MASQUÉ*****";
          }
          processedChildrenForDisplay = processedChildrenForDisplay.replaceAll(new RegExp(escapedKey, "g"), displayValue);
          processedChildrenForCopy = processedChildrenForCopy.replaceAll(new RegExp(escapedKey, "g"), value);
        }
        setDisplayText(processedChildrenForDisplay);
        setCopyText(processedChildrenForCopy);
      });
    }
    if (window.rootStore) {
      init();
    } else {
      window.addEventListener("adu:storeReady", init);
    }
    return () => {
      window.removeEventListener("adu:storeReady", init);
      unsubscribe?.();
    };
  }, [children]);
  useEffect(() => {
    if (!wrapperRef.current) return;
    const originalWriteText = navigator.clipboard.writeText.bind(navigator.clipboard);
    let isOverriding = false;
    const handleClick = e => {
      const button = e.target.closest('[data-testid="copy-code-button"]');
      if (!button || !wrapperRef.current.contains(button)) return;
      isOverriding = true;
      navigator.clipboard.writeText = text => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
          return originalWriteText(copyText);
        }
        return originalWriteText(text);
      };
      setTimeout(() => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
        }
      }, 100);
    };
    const wrapper = wrapperRef.current;
    wrapper.addEventListener('click', handleClick, true);
    return () => {
      wrapper.removeEventListener('click', handleClick, true);
      if (navigator.clipboard.writeText !== originalWriteText) {
        navigator.clipboard.writeText = originalWriteText;
      }
    };
  }, [copyText]);
  return <div ref={wrapperRef}>
      <CodeBlock filename={filename} icon={icon} language={language} lines highlight={highlight}>
        {displayText}
      </CodeBlock>
    </div>;
};

Les initiateurs de la déconnexion OIDC par canal arrière vous permettent de déconnecter à distance les utilisateurs de leurs applications en fonction des événements de fin de session. Les initiateurs de la déconnexion OIDC par canal arrière fonctionnent avec différents protocoles — par exemple, une demande de déconnexion <Tooltip tip="Fournisseur d’identité (IdP) : service qui stocke et gère les identités numériques." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=identity+provider">fournisseur d’identité</Tooltip>-initiée (déclenchée par l’IdP) <Tooltip tip="Fournisseur d’identité (IdP) : service qui stocke et gère les identités numériques." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=SAML">SAML</Tooltip> — et ne sont pas touchés par les restrictions sur les cookies tiers.

Cette fonctionnalité est une extension de la spécification OIDC back-channel standard. Vous pouvez la configurer pour lancer une demande de déconnexion OIDC par canal arrière lors d’événements de fin de session précis, comme un changement de mot de passe ou l’expiration d’une session, ou pour tous les événements de fin de session.

Les administrateurs peuvent activer cette fonctionnalité pour certaines applications avec l’Auth0 <Tooltip tip="Management API : produit permettant aux clients d’effectuer des tâches administratives." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Management+API">Management API</Tooltip>.

<div id="how-oidc-back-channel-logout-initiators-work">
  ## Fonctionnement des initiateurs de la déconnexion OIDC par canal arrière
</div>

Les initiateurs associent une réponse de déconnexion OIDC par canal arrière à un événement de fin de session. Ils capturent l’événement et s’en servent pour déclencher un Logout Token OIDC dans toutes les applications associées à la session en question.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Les initiateurs ne contrôlent pas la gestion des sessions dans votre tenant, y compris les événements de fin de session.
</Callout>

Le diagramme suivant montre comment un initiateur de la déconnexion OIDC par canal arrière fonctionne dans le cas d’un événement de changement de mot de passe :

<Frame>
  <img src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2GwtCTwecxYONxL1DbewxO/b504426017276605735ab59dc3242794/OIDC_Back-Channel_Logout_Initiators_Diagram.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=6ed76b1ab27ec5c2424abed360a8ad4e" alt="" width="1500" height="1007" data-path="docs/images/cdy7uua7fh8z/2GwtCTwecxYONxL1DbewxO/b504426017276605735ab59dc3242794/OIDC_Back-Channel_Logout_Initiators_Diagram.png" />
</Frame>

<div id="configure-oidc-back-channel-logout-initiators">
  ## Configurer les initiateurs de la déconnexion OIDC par canal arrière
</div>

Vous pouvez configurer les initiateurs de la déconnexion OIDC par canal arrière au moyen de l’Auth0 Management API.

<div id="management-api">
  ### Management API
</div>

Vous pouvez configurer les initiateurs de la déconnexion OIDC par canal arrière d’une application à l’aide de la Management API en utilisant le point de terminaison [Mettre à jour un client](https://auth0.com/docs/api/management/v2/clients/patch-clients-by-id).

1. Obtenez un [jeton d’accès à la Management API](/docs/fr-ca/secure/tokens/access-tokens/management-api-access-tokens) avec la portée `update:clients`.
2. Envoyez une requête au point de terminaison [Mettre à jour un client](https://auth0.com/docs/api/management/v2/clients/patch-clients-by-id) avec les données de configuration appropriées dans le payload. Par exemple, pour déconnecter une application après un changement de mot de passe, fournissez ce qui suit :

export const codeExample1 = `   PATCH /api/v2/clients/{yourClientId}
{
  ...
  "oidc_logout": {
    "backchannel_logout_urls": ["https://example.com/cb"]
    "backchannel_logout_initiators": {
      "mode":"custom",
      "selected_initiators": ["rp-logout", "idp-logout", "password-changed"]
    }
  }
  ...
}
`;

<AuthCodeBlock children={codeExample1} language="json" filename="JSON" />

<div id="properties">
  #### Propriétés
</div>

L’objet `backchannel_logout_initiators` comprend les propriétés suivantes :

| Propriété             | Type    | Obligatoire ?                      | Description                                            | Valeurs prises en charge                                                                                                           |
| --------------------- | ------- | ---------------------------------- | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- |
| `mode`                | chaîne  | Obligatoire                        | Méthode de configuration pour activer les initiateurs. | `custom`, `all`                                                                                                                    |
| `selected_initiators` | tableau | Obligatoire si `mode` est `custom` | Liste des initiateurs à activer.                       | `rp-logout`, `idp-logout`, `password-changed`, `session-expired`, `session-revoked`, `account-deleted`, `email-identifier-changed` |

<div id="mode-property">
  ##### propriété `mode`
</div>

La propriété `mode` détermine la méthode de configuration utilisée pour activer les initiateurs.

Par défaut, sa valeur est `custom`, ce qui vous permet de préciser les initiateurs à activer. Si vous voulez que votre application se déconnecte dès que la session IdP prend fin, définissez-la sur `all`.

La propriété `mode` prend en charge les valeurs suivantes :

| Valeur   | Description                                                                       |
| -------- | --------------------------------------------------------------------------------- |
| `custom` | Active uniquement les initiateurs indiqués dans le tableau `selected_initiators`. |
| `all`    | Active automatiquement tous les initiateurs actuels et futurs.                    |

<div id="selected_initiators-property">
  ##### Propriété `selected_initiators`
</div>

La propriété `selected_initiators` contient la liste des initiateurs à activer pour l’application visée.

La propriété `selected_initiators` peut prendre les valeurs suivantes :

| Valeur                     | Description                                                                |
| -------------------------- | -------------------------------------------------------------------------- |
| `rp-logout`                | La requête a été initiée par une partie de confiance (RP).                 |
| `idp-logout`               | La requête a été initiée par un fournisseur d’identité externe (IdP).      |
| `password-changed`         | La requête a été initiée par une modification du mot de passe.             |
| `session-expired`          | La requête a été initiée par l’expiration de la session.                   |
| `session-revoked`          | La requête a été initiée par la suppression de la session.                 |
| `account-deleted`          | La requête a été initiée par la suppression d’un compte.                   |
| `email-identifier-changed` | La requête a été initiée par la modification de l’identifiant de courriel. |

<div id="examples">
  #### Exemples
</div>

<div id="subscribe-an-application-to-all-current-and-future-initiators">
  ##### Abonner une application à tous les initiateurs actuels et à venir
</div>

export const codeExample2 = `PATCH /api/v2/clients/{yourClientId}

{
  ...
  "oidc_logout": {
    "backchannel_logout_urls": ["https://example.com/cb"]
    "backchannel_logout_initiators": {
      "mode":"all"
    }
  }
  ...
}`;

<AuthCodeBlock children={codeExample2} language="json" filename="JSON" />

<div id="subscribe-an-application-to-password-changed-initiator-only-rp-logout-and-idp-logout-are-required">
  ##### Abonner une application uniquement à l’initiateur `password-changed` (`rp-logout` et `idp-logout` sont requis)
</div>

export const codeExample3 = `PATCH /api/v2/clients/{yourClientId}

{
  ...
  "oidc_logout": {
    "backchannel_logout_urls": ["https://example.com/cb"]
    "backchannel_logout_initiators": {
      "mode":"custom",
      "selected_initiators": ["rp-logout", "idp-logout", "password-changed"]
    }
  }
  ...
}`;

<AuthCodeBlock children={codeExample3} language="json" filename="JSON" />

<div id="unsubscribe-all-initiators-rp-logout-remains-the-default">
  ##### Désinscrire tous les initiateurs (rp-logout reste l’option par défaut)
</div>

export const codeExample4 = `PATCH /api/v2/clients/{yourClientId}

{
  ...
  "oidc_logout": {
	  "backchannel_logout_urls": ["https://example.com/cb"]
  }
  ...
}`;

<AuthCodeBlock children={codeExample4} language="json" filename="JSON" />

<div id="dashboard">
  ### Tableau de bord
</div>

<Tooltip tip="OpenID : norme ouverte d’authentification qui permet aux applications de vérifier l’identité des utilisateurs sans recueillir ni stocker leurs renseignements de connexion." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=OpenID">OpenID</Tooltip> Connect déconnexion OIDC par canal arrière peut être configuré dans les paramètres de votre application, avec le reste de la configuration. Cette fonctionnalité s’active automatiquement dès qu’un URI de déconnexion OIDC par canal arrière est fourni.

<Frame>
  <img src="https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=7bd252edbb046628f9d51d4d9dc59ba2" alt="Tableau de bord > Applications > Paramètres de l’application" data-og-width="1404" width="1404" data-og-height="810" height="810" data-path="docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=280&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=17e5bee66188a558127a5b7bf0ae4ea8 280w, https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=560&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=ea380724b4a9e97eac993b4881e869e9 560w, https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=840&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=9f16e84a8eafdc12845d3264443f612a 840w, https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=1100&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=0ad454a46343bf044cde4c40bfcdadee 1100w, https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=1650&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=d131213be19b47083a6d8d81d803e7d9 1650w, https://mintcdn.com/translations/xwVvTWJUElMm5YAK/docs/images/cdy7uua7fh8z/vgN0wudP38zgRZNL59Mhy/83199c9ea81dd94f5dd589c4c46bea80/Screenshot_2024-11-05_at_13.22.54.png?w=2500&fit=max&auto=format&n=xwVvTWJUElMm5YAK&q=85&s=af7c44b1ac05effa8262f4f7bdbbbfa2 2500w" />
</Frame>

<div id="selected-initiators-only">
  #### Initiateurs sélectionnés uniquement
</div>

Par défaut, votre application sera abonnée uniquement aux initiateurs requis (`rp-logout` et `idp-logout`). Tout initiateur supplémentaire, y compris ceux qui pourraient être ajoutés plus tard, doit d’abord être sélectionné avant de pouvoir déclencher une déconnexion de votre application.

Sélectionnez cette option si vous voulez que votre application se déconnecte uniquement pour les initiateurs que vous sélectionnez.

<div id="all-supported-initiators">
  #### Tous les initiateurs pris en charge
</div>

Tous les initiateurs pris en charge, y compris ceux qui seront ajoutés ultérieurement, seront sélectionnés par défaut.

Sélectionnez cette option si vous souhaitez que votre application déconnecte l’utilisateur chaque fois que la session de l’IdP prend fin.
