Valider le contrat d'API pour des modèles initiate+validate ou validate only

La ressource validate est appelée par des composants Verify internes lors d'une demande d'authentification MFA d'exécution quand le facteur utilisé prend en charge les modèles d'intégration "initiate+validate" ou "validate only".

Par exemple, un smsotp ou un totp. Verify s'attend à ce que la réponse contienne un status indiquant le succès ou l'échec de la tentative de demande de validation. Un exemple de demande envoyée par Verify à la ressource initiate du webhook en temps réel est illustré dans l'exemple suivant. En fonction de la configuration du webhook, ce même contenu peut être envoyé directement au fournisseur MFA cible ou transformé en une demande de client d'API acceptable pour le fournisseur cible.
POST '/validate' \
'Content-Type: application/json' \
'Accept: application/json' \

{
  "capability":  "<<factor capability name, e.g. totp>>",
  "id": "<<factor or device identifier from external provider>>",
  "transactionId": "<<provider transaction identifier>>"
  "attributes":
    {
      "passvalue": "806795",
      "username": "<<external MFA username>>"
    }
}
Remarque : dans cet exemple, le chemin HTTP /validate varie en fonction de la configuration du webhook.

Détails de validation de la demande

Elément Descriptif
Demande HTTP POST
En-tête HTTP - Content-Type Le type de contenu du contenu de la demande est toujours application/json.
En-tête HTTP - Accept Le type de contenu attendu du contenu de la réponse est toujours application/json.
Contenu Objet JSON représentant la valeur de jeton ou de passe à valider. Le contenu identifie également l'utilisateur et son inscription ou enregistrement MFA associé.
id

Obligatoire. Identificateur unique de la fonction de facteur MFA inscrite ou enregistrée de l'utilisateur.

capability

Obligatoire. Identifie le type de fonction du facteur MFA. La valeur est une chaîne de caractères valide. Elle doit correspondre à l'une des fonctions qui sont configurées pour le fournisseur MFA associé au webhook.

transactionId

Facultatif. Transaction ou autre descripteur d'état de la demande d'authentification du fournisseur MFA. Cette valeur est présente si la validation est effectuée dans le cadre du flux de modèle "initiate+validate". Sa valeur est identique à celle incluse dans la réponse "initiate" précédente.

attributes

Obligatoire. Valider des attributs supplémentaires spécifiques à la demande.

attributes.username

Obligatoire. Nom d'un utilisateur dans le système fournisseur externe pour lequel la validation est demandée.

attributes.passvalue

Obligatoire. Jeton ou valeur à valider.

Le code suivant est un exemple de contenu de réponse validate.
{
    "attributes": {
        "<<any name>>": "<<any value>>"
    },
    "status": "SUCCESS"
}

Détails de validation de la réponse

Eléments Descriptif
Type de contenu Objet JSON représentant le statut de la tentative de validation.
Code d'état HTTP Voir HTTP Statut.
status Obligatoire. Statut d'achèvement de la validation. Valeurs admises : SUCCESS, PENDING, TIMEOUT, CANCELED et FAILED
attributes Facultatif. Attributs supplémentaires renvoyés au client Verify public qui a déclenché la demande d'authentification MFA. Tous les attributs et valeurs supplémentaires peuvent être présents.