> ## 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 comment utiliser Actions et les SDK avec les organisations Auth0.

# Développement personnalisé avec les organisations

Vous pouvez étendre les fonctionnalités d’Auth0 à l’aide des métadonnées d’[organisation](/fr-CA/docs/manage-users/organizations/organizations-overview) et d’Actions, ou utiliser nos API et nos SDK pour créer des tableaux de bord d’administration des organisations pour vos utilisateurs.

<Card title="La disponibilité varie selon le forfait Auth0">
  Votre forfait Auth0 ou votre entente personnalisée influe sur la disponibilité de cette fonctionnalité. Pour en savoir plus, consultez [Tarification](https://auth0.com/pricing).
</Card>

<div id="extensibility">
  ## Extensibilité
</div>

Les organisations prennent en charge nos mécanismes d’extensibilité, ce qui vous permet de définir des propriétés dans les métadonnées de l’organisation et d’exposer ces données à [Actions](/fr-CA/docs/customize/actions). Vous pouvez ainsi personnaliser les fonctionnalités pour certains clients ou certaines applications; par exemple, vous pouvez exécuter une logique personnalisée dans Actions pour certains clients selon leur forfait d’abonnement en stockant cette information dans les métadonnées de l’organisation.

<div id="actions-event-object">
  ### Objet event des Actions
</div>

L’objet event des Actions stocke des renseignements contextuels sur la transaction d’authentification en cours, comme l’adresse IP, l’application ou l’emplacement de l’utilisateur.

Si vous modifiez le contenu des jetons à l’aide de l’objet `event` dans une Action, vos modifications seront disponibles dans les jetons une fois que toutes les Actions auront terminé leur exécution.

<div id="sdks">
  ## SDKs
</div>

Pour permettre aux membres de gérer eux-mêmes leurs organisations, vous pouvez leur attribuer des rôles et utiliser notre API et nos SDK pour créer des tableaux de bord dans vos produits. Les administrateurs peuvent configurer l’<Tooltip tip="Authentification unique (SSO) : service qui, après qu’un utilisateur s’est connecté à une application, le connecte automatiquement à d’autres applications." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=Single+Sign-On">authentification unique</Tooltip> (SSO), inviter des utilisateurs dans des organisations, affecter des membres à des organisations, attribuer des rôles aux membres, etc.

Voici quelques exemples de tâches que vous pouvez effectuer avec les organisations à l’aide des SDK.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Les exemples ci-dessous font référence à la claim `org_id`, disponible par défaut dans les jetons d’identité et les jetons d’accès. Cependant, vous pouvez configurer votre locataire pour prendre également en charge l’utilisation des noms d’organisation dans l’Authentication API. Les jetons contiennent alors à la fois les claims `org_id` et `org_name`. Si elle est présente, validez la claim `org_name` en plus de `org_id` pour vous assurer que les valeurs reçues correspondent à une entité de confiance.

  En général, l’utilisation des identifiants d’organisation est la méthode à privilégier pour valider les jetons. Cependant, les noms d’organisation peuvent être utilisés s’ils conviennent mieux à votre cas d’utilisation. Pour comprendre les implications possibles de l’utilisation des noms d’organisation pour valider les jetons, consultez [Utiliser les noms d’organisation dans l’Authentication API](/fr-CA/docs/manage-users/organizations/configure-organizations/use-org-name-authentication-api).
</Callout>

<div id="i-want-users-to-log-in-to-a-specified-organization">
  ### Je veux que les utilisateurs se connectent à une organisation donnée
</div>

Lors de la définition d’une nouvelle application, transmettez l’ID de l’organisation dans le paramètre organization. Ensuite, lors du rappel, assurez-vous que l’organisation renvoyée dans le <Tooltip tip="ID Token : informations d’identification destinées à l’application elle-même, et non à l’accès à une ressource." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=ID+token">jeton d’identité</Tooltip> est bien la même que celle envoyée dans la requête `/authorize`, en validant la claim `org_id` de la même manière que les autres claims, comme `exp` et `nonce`.

Pour en savoir plus, consultez :

* [Ajouter la connexion à l’aide du flux de code d’autorisation](/fr-CA/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/add-login-auth-code-flow)
* [Appeler votre API à l’aide du flux de code d’autorisation](/fr-CA/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/call-your-api-using-the-authorization-code-flow)
* [Ajouter la connexion à l’aide du flux de code d’autorisation avec PKCE](/fr-CA/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce/add-login-using-the-authorization-code-flow-with-pkce)
* [Appeler votre API à l’aide du flux de code d’autorisation avec PKCE](/fr-CA/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce/call-your-api-using-the-authorization-code-flow-with-pkce)
* [Ajouter la connexion à l’aide du flux implicite avec Form Post](/fr-CA/docs/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post/add-login-using-the-implicit-flow-with-form-post)
* [Appeler votre API à l’aide du flux hybride](/fr-CA/docs/get-started/authentication-and-authorization-flow/hybrid-flow/call-api-hybrid-flow)
* [Personnaliser le délai d’expiration d’inactivité de la session selon l’organisation](/fr-CA/docs/manage-users/sessions/manage-sessions-actions)

<div id="from-my-application-i-want-to-get-the-organization-to-which-the-authenticated-user-logged-in">
  ### Depuis mon application, je veux obtenir l’organisation avec laquelle l’utilisateur authentifié s’est connecté
</div>

Si l’utilisateur a été authentifié au moyen d’une organisation, l’ID de l’organisation apparaîtra dans la claim `org_id` du jeton d’identité. Avec le SDK SPA d’Auth0, vous pouvez le récupérer comme suit :

`const { org_id } = await client.getIdTokenClaims();`

<div id="from-my-api-i-want-to-get-the-organization-with-which-the-access-token-was-issued">
  ### Depuis mon API, je veux récupérer l’organisation avec laquelle le jeton d’accès a été émis
</div>

Si l’utilisateur a été authentifié au moyen d’une organisation et qu’une <Tooltip tip="Audience : identifiant unique de l’audience d’un jeton émis. Appelée aud dans un jeton, sa valeur contient l’ID d’une application (ID client) pour un ID Token ou d’une API (identificateur d’API) pour un Jeton d’accès." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=audience">audience</Tooltip> a été précisée, le <Tooltip tip="Audience : identifiant unique de l’audience d’un jeton émis. Appelée aud dans un jeton, sa valeur contient l’ID d’une application (ID client) pour un ID Token ou d’une API (identificateur d’API) pour un Jeton d’accès." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=access+token">jeton d’accès</Tooltip> sera un <Tooltip tip="JSON Web Token (JWT) : format standard d’ID Token (et souvent de Jeton d’accès) utilisé pour représenter des claims de façon sécurisée entre deux parties." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=JWT">JWT</Tooltip> et contiendra la claim `org_id`, avec l’ID de l’organisation à laquelle l’utilisateur s’est connecté.

Cela peut être validé avec les autres claims côté backend, comme dans l’exemple Ruby suivant :

```ruby lines theme={null}
class JsonWebToken
  def self.verify(token)
    decoded = JWT.decode(token, nil,
               true, # Vérifier la signature de ce jeton
               algorithms: 'RS256',
               iss: 'https://YOUR_DOMAIN/',
               verify_iss: true,
               aud: Rails.application.secrets.auth0_api_audience,
               verify_aud: true) do |header|
      jwks_hash[header['kid']]
    end

    // Récupérer la valeur de l'ID d'organisation à partir du jeton décodé
    org = decoded[0]['org_id']
  end
end
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  **Trouvez votre domaine Auth0**

  Votre domaine Auth0 correspond au nom de votre locataire, suivi de votre sous-domaine régional (sauf si votre locataire se trouve dans la région des États-Unis et a été créé avant juin 2020), puis de `.auth0.com`. Par exemple, si le nom de votre locataire était `travel0`, le nom de votre domaine Auth0 serait `travel0.us.auth0.com`. (Si votre locataire se trouvait aux États-Unis et avait été créé avant juin 2020, le nom de votre domaine serait alors `https://travel0.auth0.com`.)

  Si vous utilisez des domaines personnalisés, il doit s’agir du nom de votre domaine personnalisé.
</Callout>

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

* [Comprendre le fonctionnement des organisations Auth0](/fr-CA/docs/manage-users/organizations/organizations-overview)
* [Créer votre première organisation](/fr-CA/docs/manage-users/organizations/create-first-organization)
* [Utiliser les jetons et les organisations](/fr-CA/docs/manage-users/organizations/using-tokens)
* [Configurer les organisations](/fr-CA/docs/manage-users/organizations/configure-organizations)
* [Auth0 Actions](/fr-CA/docs/customize/actions)
