Utiliser l'API d'authentification à plusieurs facteurs à la demande pour développer une page de connexion personnalisée
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API REST des domaines d'identité pour authentifier les utilisateurs et effectuer l'inscription et l'authentification à plusieurs facteurs.
Utilisez cette API d'authentification uniquement si vous créez votre propre expérience de connexion de bout en bout en développant une application de connexion personnalisée à utiliser par les domaines d'identité.
Cette API d'authentification ne peut pas être utilisée pour intégrer vos applications à des domaines d'identité à des fins d'accès avec connexion unique.
L'API d'authentification à plusieurs facteurs On Demand est basée sur le concept de machine à états. Les réponses aux demandes informent un client d'application de ce qui doit être fait ensuite plutôt que d'exiger des utilisateurs que les cookies tiers soient activés dans leur navigateur. Les cookies tiers activés dans les navigateurs peuvent poser des problèmes, en particulier pour les applications B2C où les contrôles sur le comportement de l'utilisateur final ne peuvent pas être appliqués. L'élément requestState
fourni dans chaque réponse de demande est utilisé dans la demande suivante, fournissant au client les informations dont il a besoin pour traiter la demande, puis fournissant l'ensemble d'opérations suivant autorisé.
- Prendre en charge l'inscription des utilisateurs avec les facteurs d'authentification à plusieurs facteurs activés par l'administrateur
- Renforcer la sécurité de l'authentification par mot de passe à l'aide de l'authentification à plusieurs facteurs (MFA) en exigeant une vérification supplémentaire, comme l'utilisation d'un code secret à usage unique basé sur le temps ou d'un code secret SMS.
- Effectuer l'inscription à l'authentification à plusieurs facteurs, la vérification de l'authentification à plusieurs facteurs et la gestion du facteur d'authentification utilisateur.
Les exemples d'ensemble suivants sont inclus dans ce cas d'emploi :
Inscription de facteur avec vérification
Ces cas d'emploi fournissent des exemples de demande à l'aide de l'API REST des domaines d'identité qui permet à un utilisateur de s'inscrire à des facteurs d'authentification à plusieurs facteurs.
Les cas d'emploi suivants vous guident tout au long des étapes d'inscription de différents facteurs d'authentification à plusieurs facteurs à l'aide de l'API REST :
Extraire les facteurs inscrits d'un utilisateur
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API de vérification des domaines d'identité pour extraire les facteurs auxquels un utilisateur est inscrit.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configurer les paramètres d'authentification à plusieurs facteurs.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-enrollment-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
userGUID
ou de User Name
: Les exemples de cette section utilisent
userGUID
dans les demandes. Vous pouvez demander userGUID
et userOcid
dans vos demandes.Etape 1 : Obtention des facteurs inscrits pour un utilisateur par userGUID
Cette étape obtient les facteurs inscrits pour un utilisateur en fonction de userGUID
ou du nom utilisateur.
Exemple de demande
GET {{HOST}}/mfa/v1/users/{{userGUID}}/factors
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"userGUID": "7b3d902ab05b4214bae6b2924ca6be21",
"status": "success",
"preferredFactorId": "b3e04149d958437b9b801fa70c33ca70",
"preferredMethod": "EMAIL",
"factors": [
{
"factorId": "SecurityQuestions",
"methods": [
"SECURITY_QUESTIONS"
]
},
{
"displayName": "+155XXXXX555",
"factorId": "83889faeacaf4592a964405f87506fc6",
"methods": [
"SMS"
]
},
{
"displayName": "uxxr1@example.com",
"factorId": "b3e04149d958437b9b801fa70c33ca70",
"methods": [
"EMAIL"
]
},
{
"factorId": "BypassCode",
"methods": [
"BYPASSCODE"
]
}
]
}
La réponse contient les détails userGUID
, le facteur préféré et le facteur inscrit.
Etape 2 : Obtenir les facteurs inscrits pour un utilisateur à l'aide de filtres
Vous pouvez obtenir les facteurs inscrits pour un utilisateur à l'aide du nom utilisateur ou du GUID utilisateur. Les valeurs userIdType
suivantes sont acceptées :
- USER_GUID : par exemple,
userId
doit contenir USER_GUID, tel que "7b3d902ab05b4214". - USER_NAME : par exemple,
userId
doit contenir USER_NAME, tel que John.
Exemple de demande pour extraire les facteurs inscrits en fonction du nom utilisateur
GET {{HOST}}/mfa/v1/users?userId=user1@example.com&userIdType=USER_NAME&attributes=factors
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"userGUID": "589879c55b7340518141eab82493f0cc",
"status": "success",
"preferredFactorId": "88178d80636a428393a5674ba46dc867",
"preferredMethod": "SMS",
"factors": [
{
"factorId": "BypassCode",
"methods": [
"BYPASSCODE"
]
},
{
"displayName": "user1@example.com",
"factorId": "30db2274140043918edb033d9fe29ff3",
"methods": [
"EMAIL"
]
},
{
"displayName": "+1554455555",
"factorId": "88178d80636a428393a5674ba46dc867",
"methods": [
"SMS"
]
}
]
}
La réponse contient les détails userGUID
, le facteur préféré et le facteur inscrit.
Exemple de demande d'extraction des facteurs inscrits en fonction du GUID utilisateur
GET {{HOST}}/mfa/v1/users?userId=589879c55b7340518141eab82493f0cc&userIdType=USER_GUID&attributes=factors
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"userGUID": "589879c55b7340518141eab82493f0cc",
"status": "success",
"preferredFactorId": "88178d80636a428393a5674ba46dc867",
"preferredMethod": "SMS",
"factors": [
{
"factorId": "BypassCode",
"methods": [
"BYPASSCODE"
]
},
{
"displayName": "user1@example.com",
"factorId": "30db2274140043918edb033d9fe29ff3",
"methods": [
"EMAIL"
]
},
{
"displayName": "+1554455555",
"factorId": "88178d80636a428393a5674ba46dc867",
"methods": [
"SMS"
]
}
]
}
La réponse contient les détails userGUID
, le facteur préféré et le facteur inscrit.
Lancer et vérifier le facteur préféré
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API Factor Enrollment des domaines d'identité pour s'inscrire à l'authentification multifacteur (MFA) avec vérification de facteur.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configurer les paramètres d'authentification à plusieurs facteurs.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-verification-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
Téléchargez la collection et le fichier de variables globales à partir du dossier idcs-factor-verification-api dans GitHub, puis importez-les dans Postman.
Les exemples de cette section utilisent
userGUID
dans les demandes. Vous pouvez demander userGUID
et userOcid
dans vos demandes.Step1 : lancer la vérification du facteur préféré
Cette étape lance la vérification du facteur préféré d'un utilisateur. Si vous devez utiliser l'API de facteur de vérification sans fournir userGUID
, vous pouvez fournir un ID unique d'utilisateur tel que le nom utilisateur userId
. La valeur userIdType
dans la demande indique le type d'informations d'identification que l'utilisateur transmet en tant que valeur pour userId
. Les valeurs userIdType
suivantes sont acceptées :
- USER_GUID : par exemple,
userId
doit contenir USER_GUID, tel que "7b3d902ab05b4214" - USER_NAME : par exemple,
userId
doit contenir USER_NAME, tel que John.
L'attribut userId
contient la valeur réelle des informations d'identification utilisateur transmises.
Exemple de demande
L'exemple suivant montre la demande POST à l'adresse {{HOST}}/mfa/v1/requests
au format JSON.
{
"userId":"{{userGUID}}",
"userIdType": "USER_GUID"
}
Exemple de réponse
L'exemple suivant présente le contenu de la réponse POST à l'adresse {{HOST}}/mfa/v1/requests
au format JSON après le lancement du facteur préféré sur l'ID préféré :
{
"status": "success",
"requestId": "f843736e-cbd8-4548-b41f-343b624a79fc",
"userGUID": "589879c55b7340518141eab82493f0cc",
"factorId": "88178d80636a428393a5674ba46dc867",
"method": "SMS",
"displayName": "+4455665455",
"requestState": "GwHJr3RvycjNEv.....MhQTLmWYzA/LVp0s"
}
Dans la réponse, la valeur requestId
est l'identificateur unique généré pour cette demande. Incluez requestId
dans chaque appel suivant pour terminer la vérification de facteur. factorId
est le périphérique préféré sur lequel il a été lancé. method
est le facteur que l'utilisateur a lancé. requestState
contient les données contextuelles nécessaires au traitement de la demande.
Dans cet exemple, un otpCode
(dans le cas d'un facteur SMS et EMAIL) est envoyé à l'aide de SMS vers l'appareil mobile de l'utilisateur.
Etape 2 : Vérifier le facteur préféré
Cette étape vérifie le facteur en transmettant otpCode
dans une demande PATCH à {{HOST}}/mfa/v1/requests/{{requestId}}
.
Le client doit inclure les attributs suivants :
otpCode:
le code reçu par l'utilisateur sur son appareil-
requestState
: reçu dans la réponse de l'étape 1 requestId
: reçu dans la réponse de l'étape 1
Exemple de demande
L'exemple suivant illustre le contenu de la demande PATCH au format JSON :
{
"otpCode":"170230",
"requestState": "{{requestState}}"
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{"status":"success"}
La réussite indique que la vérification a réussi.
Lancer et vérifier un facteur de sauvegarde
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API de vérification des domaines d'identité pour effectuer la vérification du facteur de sauvegarde.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configurer les paramètres d'authentification à plusieurs facteurs.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-verification-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
Les exemples de cette section utilisent
userGUID
dans les demandes. Vous pouvez demander userGUID
et userOcid
dans vos demandes.Etape 1 : Lancer et vérifier les questions de sécurité du facteur de sauvegarde
Cette étape lance la vérification du facteur de sauvegarde d'un utilisateur. Le client doit fournir à la fois factorId
et method
dans la demande. Si vous devez utiliser l'API de facteur de vérification sans fournir userGUID
, vous pouvez fournir un ID unique d'utilisateur tel que le nom utilisateur userId
. La valeur userIdType
dans la demande indique le type d'informations d'identification que l'utilisateur transmet en tant que valeur pour userId
. Les valeurs userIdType
suivantes sont acceptées :
- USER_GUID : par exemple,
userId
doit contenir USER_GUID, tel que"7b3d902ab05b4214"
. - USER_NAME : par exemple,
userId
doit contenir USER_NAME, tel queJoe John
.
L'attribut userId
contient la valeur réelle des informations d'identification utilisateur transmises.
Pour obtenir la liste des facteurs inscrits et de leurs ID pour un utilisateur, reportez-vous au cas d'utilisation Extraire les facteurs inscrits d'un utilisateur. Dans cet exemple, le facteur de sauvegarde choisi est Questions de sécurité.
Exemple de demande de lancement de questions de sécurité de facteur de sauvegarde
L'exemple suivant présente le contenu de la demande POST vers l'adresse {{HOST}}/mfa/v1/requests/
au format JSON :
La préférence
factorId
contient l'ID unique du facteur préféré. Dans le cas de SECURITY_QUESTIONS, il aura la chaîne fixe "SecurityQuestions".{
"userId":"{{userID}}",
"userIdType":"USER_GUID",
"factorId":"{{factorID}}",
"method":"SECURITY_QUESTIONS"
}
Dans la réponse, la valeur requestId
est l'identificateur unique généré pour cette demande. Incluez requestId
dans chaque appel suivant pour terminer la vérification de facteur. Le fichier requestState
contient les données contextuelles nécessaires au traitement de la demande.
Exemple de réponse
L'exemple suivant présente le contenu de la réponse au format JSON pour la méthode de sauvegarde SEQURITY_QUESTIONS :
{
"status": "success",
"requestId": "8da79411-5388-41ee-990e-935e74cb40f3",
"userGUID": "589879c55b7340518141eab82493f0cc",
"factorId": "SecurityQuestions",
"method": "SECURITY_QUESTIONS",
"requestState": "hBJIvkyfsXBv....movYarft8HlYANV3c+0",
"securityQuestions": [
{
"id": "MaidenName",
"localizedText": "What's your mother's maiden name?"
}
]
}
Dans la réponse, la valeur requestId
est l'identificateur unique généré pour cette demande. Incluez requestId
dans chaque appel suivant pour terminer la vérification de facteur. Le fichier requestState
contient les données contextuelles nécessaires au traitement de la demande. Dans cet exemple, une question est renvoyée de la liste des questions inscrites auxquelles l'utilisateur doit répondre.
Exemple de demande de vérification des questions de sécurité du facteur de sauvegarde
Cette étape vérifie le facteur de sauvegarde en transmettant la réponse à la question de sécurité dans une demande PATCH à {{HOST}}/mfa/v1/requests/{{requestID}}
. Le client doit inclure les attributs suivants :
requestState:
reçu dans la réponse de l'étape 1securityQuestions id/answers
: défini par l'utilisateur lors de l'inscription
Exemple de demande
{
"securityQuestions":[
{
"id":"MaidenName",
"answer":"Smith"
}
],
"requestState": "{{requestState}}"
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{"status":"success"}
La réussite indique que la vérification a réussi.
Etape 2 : Lancer et vérifier le facteur de sauvegarde EMAIL
Cette étape lance la vérification d'un facteur de sauvegarde EMAIL.
Exemple de demande de lancement du facteur EMAIL
L'exemple suivant illustre l'exemple de demande au format JSON pour la méthode préférée "EMAIL" :
{
"userId":"{{userID}}",
"userIdType":"USER_GUID",
"factorId":"{{factorID}}",
"method":"EMAIL"
}
Exemple de réponse
L'exemple suivant illustre l'exemple de réponse pour lancer le facteur EMAIL au format JSON :
{
"status":"success",
"requestId":"<Request ID>",
"userGUID":"<User GUID>",
"factorId":"factorID",
"method":"EMAIL",
"displayName":"Joe John",
"requestState":"QYV81R9eoagwWQ"
}
Exemple de demande de vérification du facteur EMAIL
L'exemple suivant illustre la demande PATCH au format JSON pour le facteur EMAIL :
{
"otpCode":"170230"
"requestState": "QYV81R9eoagwWQ"
}
Exemple de réponse
L'exemple suivant montre le contenu de la réponse au format JSON pour vérifier le facteur EMAIL :
{"status":"success"}
La réussite indique que la vérification a réussi.
Renvoyer les facteurs de mot de passe à usage unique sans notifier l'utilisateur
Ce cas d'utilisation fournit un exemple de lancement de l'API d'authentification à plusieurs facteurs On Demand pour renvoyer des facteurs de code secret à usage unique (SMS, e-mail ou appel téléphonique) dans une réponse sans en informer l'utilisateur.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-verification-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configuration des paramètres d'authentification à plusieurs facteurs.
Attribut | Valeurs prises en charge / exemples de valeur | Valeurs multiples | Détails d'utilisation |
---|---|---|---|
userFlowControlledByExternalClient |
True / False | False |
Définir cette option sur
et le mot de passe à usage unique sera renvoyé dans la réponse dans le format crypté spécifié. Remarque : le certificat utilisé pour le cryptage est téléchargé vers l'application à l'avance et est référencé à l'aide de l'attribut |
x5t | Chaîne / X509 Empreinte numérique du certificat SHA-1 |
Lorsque cette option est indiquée, le service utilise ce certificat téléchargé pour crypter les données de mot de passe à usage unique. Remarque : l'attribut "x5t" doit correspondre au certificat chargé. |
{
"userId":"<Unique Id>",
"userIdType":"USER_NAME/USER_GUID",
"userFlowControlledByExternalClient": true,
"x5t" :"<certificate thumbprint>"
}
Attribut | Valeurs prises en charge / exemples de valeur | Valeurs multiples | Détails d'utilisation |
---|---|---|---|
otp |
Correspondance
|
False |
Lorsqu'il est présent dans la réponse, l'attribut contient le mot de passe à usage unique crypté avec les détails suivants.
|
Exemple de réponse
{
"status": "success",
"requestId": "<Request ID>",
"userGUID": "<User GUID>",
"factorId": "<SMS/EMAIL/PHONE_CALL factor GUID>",
"method": "SMS/EMAIL/PHONE_CALL",
"displayName": "+91XXXXXXXX984",
"requestState": "4p7ViEzP2bP1MIM",
"otp": {
"value": "<Encrypted OTP value>",
"alg": "<Encryption algorithm>",
"x5t": "<x5t of the certificate used to encrypt the OTP>"
}
}
Inscription de facteur d'authentification avec vérification de facteur - SMS
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API Factor Enrollment des domaines d'identité pour s'inscrire à l'authentification multifacteur (MFA) avec vérification de facteur.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configurer les paramètres d'authentification à plusieurs facteurs.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-enrollment-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
Les exemples de cette section utilisent
userGUID
dans les demandes. Vous pouvez demander userGUID
et userOcid
dans vos demandes.Etape 1 : Lancer l'inscription au facteur SMS
Cette étape lance l'inscription à SMS. Le client doit inclure les attributs suivants :
method
: définit l'inscription au facteur SMSphoneNumber
: définit le numéro de téléphone où le texte SMS sera envoyécountryCode
: définit le code pays du numéro de téléphone où le texte SMS sera envoyé
Exemple de demande
L'exemple suivant montre la demande POST à l'adresse {{HOST}}/mfa/v1/users/{{userGUID}}/factors
au format JSON :
{
"method": "SMS",
"countryCode": "+44",
"mobileNumber": "1122334455",
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"status": "success",
"factorId": "88178d80636a428393a5674ba46dc867",
"factorStatus": "ENROLLMENT_INITIATED",
"methods": [ "SMS" ],
"displayName": "+1122334455",
"requestState": "QK1.....y+OFP//0"
}
displayName
est le numéro de portable. Un otpCode
sera envoyé à l'appareil mobile des utilisateurs, qui est utilisé pour terminer l'inscription.
Etape 1a : Renvoyer le mot de passe à usage unique
Si l'utilisateur ne reçoit pas le mot de passe à usage unique, cet exemple montre comment demander le renvoi d'un mot de passe à usage unique. Le client doit inclure les attributs suivants :
requestState:
reçu dans la réponse de l'étape 1
resendOtp:
Valeur booléenne indiquant que le mot de passe à usage unique est reçu
Exemple de demande
L'exemple suivant présente la demande PATCH à l'adresse {{HOST}}/mfa/v1/users/{{userGUID}}/factors/{{factorID}}
au format JSON :
{
"resendOtp":true,
"requestState": "QK1.....y+OFP//0"
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"status": "success",
"factorId": "88178d80636a428393a5674ba46dc867",
"factorStatus": "ENROLLMENT_INITIATED",
"methods": [ "SMS" ],
"displayName": "+445544455",
"requestState": "+HFVV...qgMUI"
}
La réponse contient les paramètres suivants :
requestState:
qui doit être transmis par le client à l'étape suivantedisplayName:
est le numéro de téléphone portable en cours d'inscription.method:
Méthode de facteur SMS- Identifiant unique
factorId:
généré pour le facteur en cours d'inscription
- La valeur
userGUID
fournie est valide - L'utilisateur est actif
- Le compte utilisateur n'est pas verrouillé
- Le facteur SMS est activé
Etape 2 : Activer le facteur SMS
Cette étape active l'inscription SMS de l'utilisateur dans une demande PATCH à l'adresse /mfa/v1/users/{{userGUID}}/factors/{{factorID}}
.
Le client doit inclure les attributs suivants :
otpCode:
le code reçu par l'utilisateur sur son appareil-
requestState
: reçu dans la réponse de l'étape 1
Exemple de demande
L'exemple suivant illustre le contenu de la demande PATCH au format JSON :
{
"otpCode":"170230",
"requestState": "{{requestState}}"
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{"status":"success"}
Le succès indique que :
OTP
est valide- La valeur
userGUID
fournie est valide - L'utilisateur est actif
- Le compte utilisateur n'est pas verrouillé
- Le facteur SMS est activé et le facteur est inscrit avec succès
Exemples de réponse d'erreur
userGUID
n'est pas valide. Vous obtenez un code de réponse HTTP 404 si userGUID
n'est pas valide.{
"status": "failed",
"ecId": "0d1QwglU0000Fy",
"cause": [
{
"code": "AUTH-3018",
"message": "User not found."
}
]
}
L'exemple suivant montre le message d'erreur au format JSON lorsque l'utilisateur est verrouillé. Vous obtenez un code de réponse HTTP 401.
{
"status": "failed",
"ecId": "0ISDCif1Qy6wg0000A8",
"cause": [
{
"code": "AUTH-1010",
"message": "Your account is locked.Contact your system administrator."
}
]
}
Inscription de facteur d'authentification avec vérification de facteur - Courriel
Ce cas d'utilisation fournit un exemple étape par étape d'utilisation de l'API Factor Enrollment des domaines d'identité pour s'inscrire à l'authentification multifacteur (MFA) avec vérification de facteur.
Ces étapes supposent que les facteurs pertinents de l'authentification à plusieurs facteurs sont activés à l'aide de Configurer les paramètres d'authentification à plusieurs facteurs.
Téléchargez la collection d'exemples de cas d'utilisation d'authentification des domaines d'identité et le fichier de variables globales à partir du dossier idcs-factor-enrollment-api dans le référentiel idm-samples GitHub, puis importez-les dans Postman.
Les exemples de cette section utilisent
userGUID
dans les demandes. Vous pouvez demander userGUID
et userOcid
dans vos demandes.Etape 1 : Lancer l'inscription au facteur e-mail
Cette étape lance l'inscription par e-mail. Le client doit inclure l'attribut suivant :
method
: définit l'inscription par courriel. L'utilisateur ne transmettra pas l'ID courriel. L'ID courriel principal est automatiquement extrait du profil de l'utilisateur.
Exemple de demande
L'exemple suivant présente le contenu de la demande POST vers l'adresse {{HOST}}/mfa/v1/users/{{userGUID}}/factors
au format JSON :
{
"method": "EMAIL",
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"status": "success",
"factorId": "30db2274140043918edb033d9fe29ff3",
"factorStatus": "ENROLLMENT_INITIATED",
"methods": [
"EMAIL"
],
"displayName": "user1@example.com",
"requestState": "Vxar...bWTTA"
}
Un otpCode
sera envoyé à l'ID courriel de l'utilisateur, qui est utilisé pour terminer l'inscription.
La réponse contient :
requestState:
qui doit être transmis par le client à l'étape suivante- Adresse électronique
displayName:
de l'utilisateur inscrit method:
Méthode du facteur EMAIL
Le succès indique que :
L'inscription du facteur a été lancée.
Etape 1a : Renvoyer le mot de passe à usage unique
L'exemple suivant montre la demande PATCH à l'adresse {{HOST}}/mfa/v1/users/{{userGUID}}/factors/{{factorID}}
au format JSON.
Si l'utilisateur ne reçoit pas le mot de passe à usage unique, cet exemple montre comment demander le renvoi d'un mot de passe à usage unique. Le client doit inclure les attributs suivants :
requestState:
reçu dans la réponse de l'étape 1resendOtp:
pour indiquer que le mot de passe à usage unique est reçu
Exemple de demande
L'exemple suivant illustre le contenu de la demande PATCH au format JSON :
{
"resendOtp":true,
"requestState": "QK1.....y+OFP//0"
}
L'exemple suivant illustre le contenu de la réponse au format JSON :
{
"status": "success",
"factorId": "30db2274140043918edb033d9fe29ff3",
"factorStatus": "ENROLLMENT_INITIATED",
"methods": ["EMAIL"],
"displayName": "username@example.com",
"requestState": "AmgsMN.....2sk4SI"
}
La réponse contient :
requestState
: doit être transmis par le client à l'étape suivantedisplayName
: ID de courriel extrait du profil de l'utilisateurmethod
: liste des méthodes inscrites à la méthode EMAILfactorId
: identificateur unique généré pour le facteur en cours d'inscription
Le succès indique que :
- La valeur
userGUID
ouuserOcid
fournie est valide - L'utilisateur est actif
- Le compte utilisateur n'est pas verrouillé
- Le facteur EMAIL est activé
Etape 2 : Activer le facteur EMAIL
Cette étape active l'inscription EMAIL pour l'utilisateur, dans une demande PATCH au point de terminaison /mfa/v1/users/{{userGUID}}/factors/{{factorID}}
.
Le client doit inclure les attributs suivants :
otpCode:
le code reçu par l'utilisateur sur son ID de courriel-
requestState
: reçu dans la réponse de l'étape 1
Exemple de demande
L'exemple suivant illustre le contenu de la demande PATCH au format JSON :
{
"otpCode":"710130",
"requestState": "{{requestState}}"
}
Exemple de réponse
L'exemple suivant illustre le contenu de la réponse au format JSON :
{"status":"success"}
Le succès indique que :
OTP
est valide- La valeur
userGUID
ouuserOcid
fournie est valide - L'utilisateur est actif
- Le compte utilisateur n'est pas verrouillé
- Le facteur EMAIL est activé et le facteur est inscrit avec succès
Exemples de réponse d'erreur
userGUID
n'est pas valide. Vous obtenez un code de réponse HTTP 404 si userGUID
ou userOcid
n'est pas valide.{
"status": "failed",
"ecId": "0d1QwglU0000Fy",
"cause": [
{
"code": "AUTH-3018",
"message": "User not found."
}
]
}
L'exemple suivant montre le message d'erreur au format JSON lorsque EMAIL est désactivé. Vous obtenez un code de réponse HTTP 401.
{
"status": "failed",
"ecId": "0000M00000A",
"cause": [
{
"code": "AUTH-1125",
"message": "The EMAIL factor has been disabled."
}
]
}