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

> Configurez Okta comme fournisseur d’identité d’entreprise OIDC pour la Requesting App XAA.

# Okta comme IdP OIDC

> [!WARNING]
>
> **La fonctionnalité accès interapplications for the Requesting App est en .**

Ce guide part du principe que vous utilisez Okta comme fournisseur d’identité d’entreprise (IdP) et que vous disposez d'un accès administratif à un tenant Okta pouvant servir aux tests. Si vous n'en avez pas, consultez [Créer et configurer votre tenant Okta](#create-and-configure-your-okta-tenant).

Configurez Okta comme fournisseur d’identité d’entreprise OIDC pour la Requesting App XAA. Vous allez mettre en place un tenant Okta, inscrire la Requesting App et la Resource App dans Okta, configurer un agent IA, puis configurer les Okta Workforce Enterprise connections dans les Auth0 tenants de la Requesting App et de la Resource App.

## Créer et configurer votre tenant Okta

Pour créer et configurer votre tenant Okta en vue de l'accès interapplications :

* Sur le [site Okta Developer](https://developer.okta.com/signup/), inscrivez-vous à un **Okta Integrator Free Plan**. Une fois l'inscription faite, vous devriez être redirigé vers votre nouveau tenant Okta.

## Enregistrer la Requesting App dans Okta

### Créer la Requesting App dans Okta

Votre Requesting App est une application OIDC standard. Dans l'Okta Admin Console :

1. Accédez à **Applications and Resources > Applications > Create App Integration**.
2. Sélectionnez **Classic experience > OIDC - OpenID Connect > Web Application**, puis sélectionnez **Next**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_req_app_new_type.png)

3. Saisissez un nom d'application.
4. Sous **Grant Type**, sélectionnez **Authorization Code** et **Refresh Token**.
5. Sous **Sign-in redirect URIs**, ajoutez le callback URL du tenant de votre Requesting App : `https://YOUR_REQUESTING_APP_DOMAIN/login/callback`.
6. Configurez les **Assignments** au besoin, puis sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/okta_req_app_new_application.png)

Une fois la Requesting App créée, Okta lui attribue un Client ID et un Client Secret OIDC.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_req_app_general.png)

### Attribuer la Requesting App aux utilisateurs de test

Permettez à votre utilisateur de test de se connecter à la Requesting App dans Okta.

Dans l'Okta Admin Console :

1. Accédez à **Applications** et sélectionnez la Requesting App que vous avez créée.
2. Sous **Assignments**, sélectionnez **Assign > Assign to People**, puis sélectionnez votre utilisateur de test.
3. Sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_req_app_user_assignment.png)

## Enregistrer et configurer l'agent IA dans Okta

Dans Okta, l'agent IA représente l'entité qui agit au nom de l'utilisateur pour accéder à la Resource App. Vous associez l'agent IA à l'application OIDC Requesting App que vous avez créée. L'agent IA adopte alors les credentials OIDC de la Requesting App.

### Créer l'agent IA

Dans l'Okta Admin Console, accédez à **Directory > AI Agents > Register AI Agent**, puis sélectionnez **Register Manually**.

1. Saisissez un nom pour votre agent.
2. Sélectionnez **Allow users to access this agent**.
3. Sous **Select an existing app**, sélectionnez la Requesting App que vous avez créée.
4. (Facultatif) Attribuez un propriétaire.
5. Sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_register_ai_agent.png)

À cette étape, votre agent IA est à l'état `STAGED`.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_ai_agent_staged.png)

### Configurer l'enregistrement du client pour l'agent IA

1. Sélectionnez l'agent IA que vous avez créé.
2. Sélectionnez l'onglet **Client registration**.
3. Sélectionnez **Client Secret** comme authentication method. Private Key JWT est également pris en charge.
4. Notez le **Client ID** et le **Client Secret** de l'agent IA : ils doivent correspondre au Client ID et au Client Secret de l'Application OIDC Requesting App que vous avez créée dans votre tenant Okta. Vous en aurez besoin au moment de configurer la connection Okta Workforce dans le tenant de votre Requesting App.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_req_app_agent_client_registration.png)

### Activer l'agent IA

Sous **Actions**, sélectionnez **Activate** et vérifiez que le **Managed Status** est bien **Active**.

## Configurer la connection de la Requesting App dans Auth0

Dans le tenant Auth0 de votre Requesting App, créez une Okta Workforce Enterprise connection. Cette connection authentifie vos utilisateurs auprès d'Okta et active le rôle XAA de Requesting App.

**Auth0 Dashboard**

1. Allez à **Authentication > Enterprise > Okta Workforce**, puis sélectionnez **Create Connection**.

Saisissez les valeurs suivantes :

| Champ | Valeur |
| - | - |
| **Connection name** | Un nom unique pour la connection. |
| **Domaine** | Le domaine de votre tenant Okta, par exemple `your-okta-tenant.oktapreview.com`. |
| **Client ID** | Le **Client ID** de l'agent IA (l'application OIDC Requesting App que vous avez créée dans votre tenant Okta). |
| **Client Secret** | Le **Client Secret** de l'agent IA (l'application OIDC Requesting App que vous avez créée dans votre tenant Okta). |

2. Sous **accès interapplications > accès interapplications Role**, sélectionnez **Requesting Application**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_connection_requesting_app.png)

La bascule **Requesting Application** est désactivée tant que la connection utilise le front channel. Assurez-vous de régler le canal de communication de la connection au canal arrière.

3. Sélectionnez **Create**.

**Management API**

Faites une requête `POST` vers l'endpoint [Create a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/post-connections.md) :

```bash theme={null}
curl --request POST 'https://{yourDomain}/api/v2/connections' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "name": "my-okta-workforce-connection",
    "strategy": "okta",
    "options": {
      "domain": "your-okta-tenant.oktapreview.com",
      "client_id": "<AI_AGENT_CLIENT_ID>",
      "client_secret": "<AI_AGENT_CLIENT_SECRET>",
      "scope": "openid profile email offline_access",
      "type": "back_channel",
      "attribute_map": {
        "mapping_mode": "use_map",
        "userinfo_scope": "openid email profile groups offline_access",
        "attributes": {
          "name": "${context.tokenset.name}",
          "email": "${context.tokenset.email}",
          "username": "${context.tokenset.preferred_username}",
          "federated_groups": "${context.userinfo.groups}",
          "federated_locale": "${context.userinfo.locale}",
          "federated_zoneinfo": "${context.userinfo.zoneinfo}"
        }
      }
    },
    "cross_app_access_requesting_app": { "active": true }
  }'
```

### Ajouter le scope offline\_access et mettre à jour le mapping utilisateur

**Auth0 Dashboard**

Une fois la connection créée, sélectionnez-la et accédez à **Settings**.

1. Sous **Scopes**, ajoutez `offline_access` à la liste des scopes. Votre application peut ainsi obtenir un refresh token, lequel est requis pour effectuer le [refresh token exchange avec Token Vault](https://auth0.com/docs/fr-ca/secure/call-apis-on-users-behalf/token-vault/refresh-token-exchange-with-token-vault.md).
2. Sous **Mappings**, sélectionnez **Okta Basic** et ajoutez `offline_access` à la liste `userinfo_scope` du mapping JSON.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_user_mapping.png)

3. Sélectionnez **Save**.

**Management API**

Effectuez une requête `PATCH` vers l’endpoint [Update a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/patch-connections-by-id.md) :

```bash theme={null}
curl --request PATCH 'https://{yourDomain}/api/v2/connections/{connectionId}' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "options": {
      "scope": "openid profile email offline_access",
      "attribute_map": {
        "mapping_mode": "use_map",
        "userinfo_scope": "openid email profile groups offline_access",
        "attributes": {
          "name": "${context.tokenset.name}",
          "email": "${context.tokenset.email}",
          "username": "${context.tokenset.preferred_username}",
          "federated_groups": "${context.userinfo.groups}",
          "federated_locale": "${context.userinfo.locale}",
          "federated_zoneinfo": "${context.userinfo.zoneinfo}"
        }
      }
    }
  }'
```

### Activer la connection pour une application

**Auth0 Dashboard**

Avant de tester la connection, accédez à l'onglet **Applications** et activez la connection pour au moins une application.

**Management API**

Effectuez une requête `PATCH` vers l'endpoint [Update a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/patch-connections-by-id.md) afin d'ajouter le `client_id` de l'application à l'array `enabled_clients` :

```bash theme={null}
curl --request PATCH 'https://{yourDomain}/api/v2/connections/{connectionId}' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "enabled_clients": ["{yourApplicationClientId}"]
  }'
```

### Tester la connection

1. Sélectionnez la connection Okta Workforce que vous avez créée, puis cliquez sur les trois points et choisissez **Try**.
2. Connectez-vous avec votre utilisateur de test dans Okta afin de vérifier que la connection fonctionne.

Une fois l'utilisateur connecté, son user profile est créé dans votre tenant Requesting App.

Les utilisateurs doivent se connecter au moins une fois au moyen d'une enterprise connection prenant en charge XAA pour que le user profile existe dans Auth0. Auth0 ne prend pas en charge la création d'utilisateur JIT avec ID-JAG pour l'instant.

## Enregistrer la Resource App dans Okta

### Créer la Resource App dans Okta

Votre Resource App est elle aussi une application Web OIDC enregistrée dans Okta. Dans l’Okta Admin Console :

1. Accédez à **Applications and Resources > Applications > Create App Integration**.
2. Sélectionnez **Classic experience > OIDC - OpenID Connect > Web Application**, puis **Next**.
3. Saisissez un nom d’application.
4. Sous **Grant Type**, sélectionnez **Authorization Code** et **Refresh Token**.
5. Sous **Sign-in redirect URIs**, ajoutez les callback URLs du tenant de la Requesting App et du tenant de la Resource App :
   * `https://YOUR_REQUESTING_APP_DOMAIN/login/callback`
   * `https://YOUR_RESOURCE_APP_DOMAIN/login/callback`
6. Configurez les **Assignments**, au besoin.
7. Sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_resource_app_details.png)

### Attribuer la Resource App aux utilisateurs de test

Autorisez votre utilisateur de test à se connecter à la Resource App dans Okta.

Dans l’Okta Admin Console :

1. Accédez à **Applications** et sélectionnez la Resource App que vous avez créée.
2. Sélectionnez **Assign > Assign to People**, puis sélectionnez votre utilisateur de test.
3. Sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_resource_app_user_assignment.png)

### Activer l'accès interapplications pour la Resource App

1. Sélectionnez l'onglet **Resource Server** de la Resource App.
2. Activez **accès interapplications (XAA)**.
3. Saisissez l'**Issuer URL** du tenant de la Resource App : `https://YOUR_RESOURCE_APP_DOMAIN/`.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_resource_app_resource_server.png)

Auth0 émet et accepte des jetons dont l'issuer URL doit obligatoirement se terminer par une barre oblique **`/`**.

4. Laissez le champ **Audience/Tenant ID** vide. Auth0 ne prend pas en charge le claim `aud_tenant`.
5. Sélectionnez **Save**.

### Assigner la Resource App à l'agent IA

Dans la Okta Admin Console :

1. Accédez à **Directory > AI Agents** et sélectionnez l'agent IA que vous avez créé.
2. Sous **Resource Connections**, sélectionnez **Add resource connection**.
3. Sélectionnez **Application**, puis **App configured for AI Agent access** comme **Resource type**.
4. Sous **Application**, sélectionnez la Resource App que vous avez créée.
5. Laissez le champ **Resource indicator** vide. S'il est laissé vide, Okta génère automatiquement une valeur.
6. Pour **AI agent's client ID registered in this app**, saisissez le **Client ID** de l'application Resource App enregistrée dans l'Auth0 tenant de votre Resource App.
7. Au besoin, configurez les restrictions de scope.
8. Sélectionnez **Add**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_ai_agent_resource_connections_tab.png)

## Configurer la connection de la Resource App dans Auth0

Dans le tenant Auth0 de la Resource App, créez une Okta Workforce Enterprise connection qui la fédère avec Okta et active le rôle XAA Resource App.

**Auth0 Dashboard**

1. Allez à **Authentication > Enterprise > Okta Workforce**, puis sélectionnez **Create Connection**.

Saisissez les valeurs suivantes :

| Champ | Valeur |
| - | - |
| **Connection name** | Un nom unique pour la connection. |
| **Domaine** | Le domaine de votre tenant Okta, par exemple `your-okta-tenant.oktapreview.com`. |
| **Client ID** | Le **Client ID** de la Resource App tel qu’enregistré dans Okta. |
| **Client Secret** | Le **Client Secret** de la Resource App tel qu’enregistré dans Okta. |

2. Sous **accès interapplications > accès interapplications Role**, sélectionnez **Resource Application**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_connection_resource_application.png)

3. Sélectionnez **Create**.

**Management API**

Effectuez une requête `POST` vers le endpoint [Create a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/post-connections.md) :

```bash theme={null}
curl --request POST 'https://{yourResourceAppDomain}/api/v2/connections' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "name": "my-okta-workforce-connection-resource-app",
    "strategy": "okta",
    "options": {
      "domain": "your-okta-tenant.oktapreview.com",
      "client_id": "<RESOURCE_APP_OKTA_CLIENT_ID>",
      "client_secret": "<RESOURCE_APP_OKTA_CLIENT_SECRET>",
      "scope": "openid profile email offline_access",
      "attribute_map": {
        "mapping_mode": "use_map",
        "userinfo_scope": "openid email profile groups offline_access",
        "attributes": {
          "name": "${context.tokenset.name}",
          "email": "${context.tokenset.email}",
          "username": "${context.tokenset.preferred_username}",
          "federated_groups": "${context.userinfo.groups}",
          "federated_locale": "${context.userinfo.locale}",
          "federated_zoneinfo": "${context.userinfo.zoneinfo}"
        }
      }
    },
    "cross_app_access_resource_app": { "active": true }
  }'
```

### Ajouter le scope offline\_access et mettre à jour les mappings

**Auth0 Dashboard**

Après avoir créé la connection, sélectionnez-la, puis accédez à **Settings**.

1. Sous **Scopes**, ajoutez `offline_access` à la liste des scopes.
2. Sous **Mappings**, sélectionnez **Okta Basic**, puis ajoutez `offline_access` à la liste `userinfo_scope` du mapping JSON.
3. Sélectionnez **Save**.

![](https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/xaa/xaa_okta_user_mapping.png)

**Management API**

Effectuez une requête `PATCH` vers l’endpoint [Update a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/patch-connections-by-id.md) :

```bash theme={null}
curl --request PATCH 'https://{yourResourceAppDomain}/api/v2/connections/{connectionId}' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "options": {
      "scope": "openid profile email offline_access",
      "attribute_map": {
        "mapping_mode": "use_map",
        "userinfo_scope": "openid email profile groups offline_access",
        "attributes": {
          "name": "${context.tokenset.name}",
          "email": "${context.tokenset.email}",
          "username": "${context.tokenset.preferred_username}",
          "federated_groups": "${context.userinfo.groups}",
          "federated_locale": "${context.userinfo.locale}",
          "federated_zoneinfo": "${context.userinfo.zoneinfo}"
        }
      }
    }
  }'
```

### Activer la connection pour la Resource App

**Auth0 Dashboard**

Sous **Applications**, activez la connection Okta Workforce pour l'application Resource App enregistrée dans le tenant de la Resource App.

**Management API**

Faites une requête `PATCH` à l'endpoint [Update a Connection](https://auth0.com/docs/fr-ca/api/management/v2/connections/patch-connections-by-id.md) afin d'ajouter le `client_id` de la Resource App à l'array `enabled_clients` :

```bash theme={null}
curl --request PATCH 'https://{yourResourceAppDomain}/api/v2/connections/{connectionId}' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <YOUR_MANAGEMENT_API_ACCESS_TOKEN>' \
  --data '{
    "enabled_clients": ["{resourceAppClientId}"]
  }'
```

### Tester la connection

Sélectionnez la connection Okta Workforce que vous avez créée, puis cliquez sur les trois points et sélectionnez **Try**. Connectez-vous avec votre utilisateur de test pour vérifier que la connection fonctionne. Une fois l'utilisateur connecté, son user profile est créé dans le tenant de votre Resource App.

Les utilisateurs doivent se connecter au moins une fois au moyen d'une enterprise connection prenant en charge XAA pour que le user profile existe dans Auth0. Pour l'instant, Auth0 ne prend pas en charge la création d'utilisateurs JIT avec ID-JAG.

## Configurer l'accès interapplications avec Token Vault

Une fois les deux connections configurées, passez à [Accès interapplications avec Token Vault](https://auth0.com/docs/fr-ca/secure/call-apis-on-users-behalf/token-vault/xaa-with-token-vault.md) pour mettre en place l'integration Token Vault et tester le flux de bout en bout.

## Publier votre Requesting App dans l’OIN

Une fois le [flux de bout en bout](https://auth0.com/docs/fr-ca/secure/call-apis-on-users-behalf/token-vault/xaa-with-token-vault.md) configuré et testé, les fournisseurs B2B et SaaS peuvent étendre leur portée auprès des clients d’entreprise en publiant leur Requesting App dans le [Okta Integration Network (OIN)](https://www.okta.com/integrations/?_gl=1*1vd3mhi*_gcl_aw*R0NMLjE3ODE2MjcxNzYuQ2p3S0NBanc2TVBSQmhCVEVpd0FkLTdNcngzNWlQaTNqRXFXdGQ2VFhONHZuenhPZF9yZ3ZPV1MxQUI4Z2x4emlWSnNmOTNSUmhvZDBSb0NaYUFRQXZEX0J3RQ..*_gcl_au*MTUzNjc2MzkxNS4xNzg2NzI2NTY1*_ga*NTA2NDgyMjM0LjE3NjMwODIxNDg.*_ga_QKMSDV5369*czE3ODc2Nzc5MDYkbzI0NiRnMSR0MTc4NzY3NzkzNCRqMzIkbDAkaDA.). Pour savoir comment procéder, suivez les instructions de [How to Build and List Secure accès interapplications Connections on OIN](https://developer.okta.com/blog/2026/07/06/submit-oin-xaa?_gl=1*1vd3mhi*_gcl_aw*R0NMLjE3ODE2MjcxNzYuQ2p3S0NBanc2TVBSQmhCVEVpd0FkLTdNcngzNWlQaTNqRXFXdGQ2VFhONHZuenhPZF9yZ3ZPV1MxQUI4Z2x4emlWSnNmOTNSUmhvZDBSb0NaYUFRQXZEX0J3RQ..*_gcl_au*MTUzNjc2MzkxNS4xNzg2NzI2NTY1*_ga*NTA2NDgyMjM0LjE3NjMwODIxNDg.*_ga_QKMSDV5369*czE3ODc2Nzc5MDYkbzI0NiRnMSR0MTc4NzY3NzkzNCRqMzIkbDAkaDA.).
