> ## 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.

# Configurer Akamai pour envoyer des signaux supplémentaires

<Warning>
  **Auth0 Supplemental Signals est actuellement en accès anticipé.**

  En utilisant cette fonctionnalité, vous acceptez les modalités applicables de l’essai gratuit dans le [Master Subscription Agreement](https://www.okta.com/legal) d’Okta. Pour en savoir plus sur les phases de mise à disposition des produits Auth0, consultez [Phases de mise à disposition des produits](/docs/fr-CA/troubleshoot/product-lifecycle/product-release-stages).
</Warning>

<Info>
  **Avant de commencer**

  Pour configurer Akamai afin d’envoyer des signaux supplémentaires à votre tenant Auth0, vous devez d’abord [configurer Akamai comme proxy inverse](/docs/fr-CA/customize/custom-domains/self-managed-certificates).
</Info>

Si vous utilisez Akamai Bot Manager et/ou Akamai Account Protector, vous pouvez configurer votre proxy inverse dans Akamai pour envoyer les résultats à Auth0 et [les utiliser dans des Actions](./use-akamai-supplemental-signals-actions).

<div id="supported-login-flows">
  # Flux de connexion pris en charge
</div>

Auth0 prend actuellement en charge les flux de connexion suivants pour les signaux supplémentaires d’Akamai :

* Universal Login : identifiant + mot de passe
  * [Universal Login : identifiant d’abord](/docs/fr-CA/authenticate/login/auth0-universal-login/identifier-first)
  * [Resource Owner Password (ROP)](/docs/fr-CA/get-started/authentication-and-authorization-flow/resource-owner-password-flow)

<div id="step-1-register-an-api-in-akamai">
  # Étape 1 : Enregistrer une API dans Akamai
</div>

Afin qu’Akamai puisse déterminer si les tentatives de connexion réussissent ou échouent, vous devez enregistrer une API dans Akamai, puis définir un point de terminaison pour chaque flux de connexion Auth0 que vous souhaitez prendre en charge.

Pour en savoir plus, consultez [Register an API on Akamai TechDocs](https://techdocs.akamai.com/api-definitions/docs/register-api) et [Add API resources on Akamai TechDocs](https://techdocs.akamai.com/api-definitions/docs/add-api-resources).

<AccordionGroup>
  <Accordion title="Nouvel identifiant Universal Login + mot de passe">
    Utilisez les valeurs suivantes pour enregistrer votre API dans Akamai :

    | Propriété                   | Valeur   |
    | --------------------------- | -------- |
    | Chemin de base de l'API     | `/u`     |
    | Emplacement de la clé d’API | `Header` |

    Après avoir créé votre API, vous devrez ajouter une ressource d'API pour chacun des points de terminaison Auth0 suivants :

    * `/u/login/password`
    * `/u/signup`
    * `/u/signup/password`

    Le processus est le même pour tous les points de terminaison, mais les valeurs de configuration varient légèrement.

    ### Ajouter une ressource d'API

    Utilisez les valeurs suivantes pour configurer une ressource dans votre API Akamai :

    <Tabs>
      <Tab title="/u/login/password">
        | Propriété                    | Valeur                               |
        | ---------------------------- | ------------------------------------ |
        | Paramètres d'API non définis | `Spécifique` (`Corps de la requête`) |
        | Chemin                       | `/login/password`                    |
        | Méthodes                     | `POST`                               |
      </Tab>

      <Tab title="/u/signup">
        | Propriété                    | Valeur                               |
        | ---------------------------- | ------------------------------------ |
        | Paramètres d'API non définis | `Spécifique` (`Corps de la requête`) |
        | Chemin                       | `/signup`                            |
        | Méthodes                     | `POST`                               |
      </Tab>

      <Tab title="/u/signup/password">
        | Propriété                    | Valeur                               |
        | ---------------------------- | ------------------------------------ |
        | Paramètres d'API non définis | `Spécifique` (`Corps de la requête`) |
        | Chemin                       | `/signup/password`                   |
        | Méthodes                     | `POST`                               |
      </Tab>
    </Tabs>

    ### Ajouter des paramètres aux méthodes

    Après avoir créé votre ressource API, vous devrez définir le paramètre `Request body` pour qu'Akamai puisse analyser correctement les requêtes de connexion.

    Utilisez les valeurs suivantes pour définir le paramètre `Request body` :

    <Tabs>
      <Tab title="/u/login/password">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "state"
                  ],
                  "properties": {
                    "state": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "username": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "password": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "action": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    }
                  }
                }
              }
            },
            "required": true
          }
        }
        ```
      </Tab>

      <Tab title="/u/signup">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "email",
                    "password"
                  ],
                  "properties": {
                    "email": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "password": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    }
                  }
                }
              }
            },
            "required": true
          }
        }
        ```
      </Tab>

      <Tab title="/u/signup/password">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "email"
                  ],
                  "properties": {
                    "email": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256,
                      "description": "email"
                    }
                  }
                }
              }
            },
            "required": true
          }
        }
        ```
      </Tab>
    </Tabs>
  </Accordion>

  <Accordion title="Nouveau Universal Login – identifiant en premier">
    Utilisez les valeurs suivantes pour enregistrer votre API dans Akamai :

    | Propriété                   | Valeur    |
    | --------------------------- | --------- |
    | Chemin de base de l’API     | `/u`      |
    | Emplacement de la clé d’API | `En-tête` |

    Après avoir créé votre API, vous devrez ajouter une ressource d'API pour chacun des points de terminaison Auth0 suivants :

    * `/u/login`
    * `/u/signup`
    * `/u/signup/password`

    Le processus est le même pour tous les points de terminaison, mais les valeurs de configuration varient légèrement.

    ### Ajouter une ressource d'API

    Utilisez les valeurs suivantes pour configurer une ressource dans votre API Akamai :

    <Tabs>
      <Tab title="/u/login">
        | Propriété                    | Valeur                      |
        | ---------------------------- | --------------------------- |
        | Paramètres d’API non définis | `Specific` (`Request body`) |
        | Chemin                       | `/login`                    |
        | Méthodes HTTP                | `POST`                      |
      </Tab>

      <Tab title="/u/signup">
        | Propriété                    | Valeur                      |
        | ---------------------------- | --------------------------- |
        | Paramètres d’API non définis | `Specific` (`Request body`) |
        | Chemin                       | `/login/signup`             |
        | Méthodes HTTP                | `POST`                      |
      </Tab>

      <Tab title="/u/signup/password">
        | Propriété                    | Valeur                      |
        | ---------------------------- | --------------------------- |
        | Paramètres d’API non définis | `Specific` (`Request body`) |
        | Chemin                       | `/signup/password`          |
        | Méthodes HTTP                | `POST`                      |
      </Tab>
    </Tabs>

    ### Ajouter des paramètres aux méthodes

    Après avoir créé votre ressource API, vous devrez définir le paramètre `Request body` pour qu'Akamai puisse analyser correctement les requêtes de connexion.

    Utilisez les valeurs suivantes pour définir le paramètre `Request body` :

    <Tabs>
      <Tab title="/u/login">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "state"
                  ],
                  "properties": {
                    "state": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "username": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "password": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "action": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    }
                  }
                }
              }
            },
            "required": true
          }
        } 
        ```
      </Tab>

      <Tab title="/u/signup">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "email",
                    "password"
                  ],
                  "properties": {
                    "email": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "password": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    }
                  }
                }
              }
            },
            "required": true
          }
        } 
        ```
      </Tab>

      <Tab title="/u/signup/password">
        | Propriété                  | Valeur           |
        | -------------------------- | ---------------- |
        | Format                     | `JSON`           |
        | Obligatoire                | `Oui`            |
        | Définir le format du corps | `Oui`            |
        | Détails du schéma          | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "required": [
                    "email"
                  ],
                  "properties": {
                    "email": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256,
                      "description": "email"
                    }
                  }
                }
              }
            },
            "required": true
          }
        }
        ```
      </Tab>
    </Tabs>
  </Accordion>

  <Accordion title="ROP">
    Utilisez les valeurs suivantes pour enregistrer votre API dans Akamai :

    | Propriété                   | Valeur   |
    | --------------------------- | -------- |
    | Chemin de base de l’API     | Aucune.  |
    | Emplacement de la clé d’API | `Header` |

    Après avoir créé votre API, vous devez ajouter une ressource d’API pour chacun des points de terminaison Auth0 suivants :

    * `/oauth/token`

    Le processus est le même pour tous les points de terminaison, mais les valeurs de configuration diffèrent légèrement.

    ### Ajouter une ressource d’API

    Utilisez les valeurs suivantes pour configurer une ressource sur votre API Akamai :

    <Tabs>
      <Tab title="/oauth/token">
        | Propriété                | Valeur                      |
        | ------------------------ | --------------------------- |
        | API undefined parameters | `Specific` (`Request body`) |
        | Chemin                   | `/oauth/token`              |
        | Méthodes                 | `POST`                      |
      </Tab>
    </Tabs>

    ### Ajouter des paramètres aux méthodes

    Après avoir créé votre ressource d’API, vous devez définir le paramètre `Request body` afin qu’Akamai puisse analyser correctement les requêtes de connexion.

    Utilisez les valeurs suivantes pour définir le paramètre `Request body` :

    <Tabs>
      <Tab title="/oauth/token">
        | Propriété          | Valeur           |
        | ------------------ | ---------------- |
        | Format             | `JSON`           |
        | Required           | `Yes`            |
        | Define body format | `Yes`            |
        | Schema details     | Voir ci-dessous. |

        ```json theme={null}
        {
          "requestBody": {
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "username": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    },
                    "password": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "maxItems": 256
                    }
                  }
                }
              }
            },
            "required": true
          }
        } 
        ```
      </Tab>
    </Tabs>
  </Accordion>
</AccordionGroup>

<div id="step-2-forward-bot-results-from-akamai-to-auth0">
  # Étape 2 : Transférer les résultats de bot d'Akamai vers Auth0
</div>

Pour configurer Akamai afin de transférer les résultats de bot vers Auth0, consultez la page [Forward Bot Results to Origin on Akamai TechDocs](https://techdocs.akamai.com/content-protector/docs/forward-bot-results-to-origin).

<Note>
  L’en-tête `akamai-user-risk` peut ne pas être présent pour chaque requête de connexion, car Akamai n’envoie cet en-tête que lorsqu’il crée un score de risque utilisateur.
</Note>

<div id="step-3-enable-processing-of-akamai-headers-in-auth0">
  # Étape 3 : Activer le traitement des en-têtes Akamai dans Auth0
</div>

Vous pouvez configurer Auth0 pour accepter les signaux supplémentaires envoyés par Akamai dans Auth0 Dashboard ou avec la Management API d’Auth0.

<Tabs>
  <Tab title="Dashboard">
    Pour activer les signaux supplémentaires dans le Dashboard :

    1. Accédez à [Dashboard > Security > Attack Protection](#).
    2. Sélectionnez **Supplemental Signals**.
    3. Activez le commutateur **Enable Akamai headers**.
  </Tab>

  <Tab title="Management API">
    Pour activer les signaux supplémentaires avec la Management API :

    1. [Obtenez un jeton d’accès pour la Management API](/docs/fr-CA/secure/tokens/access-tokens/management-api-access-tokens/get-management-api-access-tokens-for-production) avec la portée `update:attack_protection`.
    2. Appelez le point de terminaison de la Management API [Update the supplemental signals configuration for a tenant](/docs/fr-CA/api/management/v2/supplemental-signals/patch-supplemental-signals) avec le corps de requête suivant :

    ```json theme={null}
    {
      "akamai_enabled": true
    }
    ```
  </Tab>
</Tabs>

<div id="step-4-test-and-verify-configuration">
  # Étape 4 : Tester et vérifier la configuration
</div>

Testez votre configuration en appelant chaque point de terminaison (endpoint) pour le ou les flux de connexion que vous avez configurés.

Si vous avez tout configuré correctement :

* Les en-têtes `akamai-user-risk` et `akamai-bot` seront présents dans les journaux de votre tenant pour les événements concernés.
* Vous pouvez utiliser les propriétés suivantes dans l’objet `event` de l’Action post-login :
  * `authentication.riskAssessment.supplemental.akamai.akamaiBot`
  * `authentication.riskAssessment.supplemental.akamai.akamaiUserRisk`
