Utiliser les API REST d'authentification avancée Oracle avec Postman
Introduction
Ce tutoriel vous explique comment effectuer des appels d'API REST vers Oracle Advanced Authentication à l'aide de Postman, logiciel généralement utilisé pour les tests d'API REST.
Objectifs
Les API REST d'authentification avancée Oracle permettent d'intégrer l'authentification avancée Oracle aux clients REST afin qu'ils puissent configurer et administrer l'authentification avancée Oracle. Pour obtenir la liste complète des adresses d'API REST, reportez-vous à API d'administration OAA.
Dans ce tutoriel, vous allez apprendre à télécharger et à importer la collection Postman d'authentification avancée Oracle et à tester certaines des demandes Postman les plus courantes.
Prérequis
Pour effectuer ce tutoriel, vous aurez besoin des éléments suivants :
- Installation d'Oracle Advanced Authentication en cours
- Oracle Mobile Authenticator installé sur un appareil mobile
- Connaissance du style d'architecture REST
- Client Postman natif v8.0.6 ou version ultérieure installé
- Fichiers json Oracle_Advanced_Authentication_REST_API.postman_collection.json, Oracle_Advanced_Authentication_Example_Environment.postman_environment.json
Installation de la collection Postman d'authentification avancée Oracle
Définition des paramètres d'environnement dans Postman
-
Ouvrez Postman et sélectionnez Fichier > Importer.
-
Dans la boîte de dialogue Importer, dans l'onglet Fichier, sélectionnez Télécharger les fichiers. Choisissez Oracle_Advanced_Authentication_Example_Environment.postman_environment.json, puis cliquez sur Ouvrir.
-
Dans le menu latéral gauche, cliquez sur
.
-
Dans la liste d'environnements affichée, à droite d'Oracle Advanced Authentication Example Environment, cliquez sur l'icône représentant des points de suspension, puis sur Dupliquer.
-
Dans Oracle Advanced Authentication Example Environment Copy, qui apparaît au-dessus de l'environnement d'origine, cliquez sur l'icône et renommez-la en
Oracle Advanced Authentication Environment for REST APIs
. -
Mettez à jour les variables d'environnement du nouvel environnement en entrant les valeurs suivantes pour Valeur initiale et Valeur actuelle. Une fois l'opération terminée, cliquez sur Enregistrer, puis sur X dans l'onglet pour la fermer :
- oaa-admin : nom d'hôte et port d'administration Oracle Advanced Authentication, par exemple
https://oaa.example.com
- oaa-policy : nom d'hôte et port de stratégie Oracle Advanced Authentication, par exemple
https://oaa.example.com
- oaa-runtime : nom d'hôte et port d'exécution Oracle Advanced Authentication, par exemple
https://oaa.example.com
- RELEASENAME :
RELEASENAME
affecté à la configuration de l'authentification avancée Oracle, par exempleoaainstall
. Il s'agit de la valeur transmise pourcommon.deployment.name
lors de l'installation d'OAA. - oaapolicyapikey :
oaapolicyapikey
pour la configuration de l'authentification avancée Oracle, par exemplea5764d4ef6b71129f38a2d8ddc88b6060653d3c8
. Il s'agit de la valeur transmise pourinstall.global.policyapikey
lors de l'installation d'OAA. - oaaapikey :
oaaapikey
pour la configuration de l'authentification avancée Oracle, par exemplea5764d4ef6b71129f38a2d8ddc88b6060653d3c8
. Il s'agit de la valeur transmise pourinstall.global.uasapikey
lors de l'installation d'OAA.
Remarque : si vous ne connaissez pas les URL pour
oaa-admin
,oaa-policy
etoaa-runtime
(spui), exécutez les opérations suivantes sur le cluster Kubernetes OAA :kubectl get pods -n <namespace> | grep 'oaa-admin\|oaa-policy\|spui'
Pour chaque pod, exécutez la commande suivante pour obtenir l'URL :
kubectl exec -it <pod> -n <namespace> -- cat serviceurl.txt
Voici un exemple de l'environnement :
Description de l'image environment.jpg
Remarque : les valeurs d'URL indiquées dans l'exemple ci-dessus supposent une installation OAA à l'aide de NodePort. Par conséquent, les numéros de port de chacun des pods sont définis dans les URL. Si l'installation OAA utilise une entrée, utilisez l'URL entrante dans tous les cas.
- oaa-admin : nom d'hôte et port d'administration Oracle Advanced Authentication, par exemple
-
Cliquez sur la liste déroulante Environnement, puis sélectionnez l'environnement mis à jour dans la liste :
Importer la collection Postman
-
Pour importer la collection Postman de l'API REST d'authentification avancée Oracle, dans la page principale Postman, sélectionnez Fichier > Importer.
-
Dans la boîte de dialogue Importer, dans l'onglet Fichier, sélectionnez Télécharger les fichiers. Choisissez le fichier Oracle_Advanced_Authentication_REST_API.postman_collection.json, puis cliquez sur Ouvrir et Importer.
Cliquez sur Collections dans le menu de gauche. La collection doit s'afficher comme suit :
Tester l'API REST
Dans cette section, vous allez exécuter certaines des demandes de la collection Postman pour Oracle Advanced Authentication.
Remarque : pour empêcher les erreurs de vérification de certificat SSL, accédez à Fichier > Paramètres et, dans l'onglet Général, définissez Vérification de certificat SSL sur OFF.
Création d'un agent d'intégration d'API
Dans cette section, vous allez créer un agent d'intégration d'API.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la définition des entités système -> agent/v1.
-
Sélectionnez Créer un agent d'intégration d'API. Cette demande envoie une demande POST à l'adresse
/oaa-policy/agent/v1
et crée un agent d'intégration d'API appeléAPIAgent
en fonction des informations contenues dans le corps : -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche les détails de l'agent d'intégration créé. Notez la valeuragentgid
renvoyée car elle sera utilisée dans les sections suivantes.
Créer un niveau d'assurance
Dans cette section, vous allez créer un niveau d'assurance pour l'agent d'intégration créé.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la définition des entités système -> AssuranceLevel/v1.
-
Sélectionnez Définir le niveau d'assurance. Cette demande envoie une demande POST à l'adresse
/oaa-policy/assuranceLevel/v1
et crée un niveau d'assurance pour l'agent d'intégration appeléAssuranceLevel1
. Dans le corps, modifiez la valeur deagentid
afin qu'elle corresponde à la valeur renvoyée précédemment : -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche des détails sur le niveau d'assurance créé.
Créer des groupes
Dans cette section, vous allez créer un groupe d'actions pour les facteurs et un groupe pour les adresses IP. Ces groupes seront ensuite affectés à une stratégie et une règle pour l'agent d'intégration et le niveau d'assurance précédemment créés.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la définition des entités système -> group/v1.
-
Sélectionnez Créer un groupe de facteurs. Cette demande envoie une demande POST à l'adresse
/oaa-policy/group/v1
et crée un groupe pour l'agent nomméFactorRuleGrp1
. Dans le corps, modifiez la valeur deagentid
afin qu'elle corresponde à la valeur renvoyée précédemment. Dans cet exemple, le groupe définit deux facteurs :ChallengeEmail
etChallengeOMATOTP
: -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche les détails du groupe créé. Notez la valeurgroupid
car elle sera utilisée ultérieurement pour affecter ce groupe à une stratégie. -
Dans la collection actuelle sous group/v1, sélectionnez Créer un groupe de type IP. Cette demande envoie une demande POST à l'adresse
/oaa-policy/group/v1
et crée un groupe pour l'agent d'intégration nomméSecureIP
. Dans le corps, modifiez la valeur deagentgid
afin qu'elle corresponde à la valeur renvoyée précédemment. Dans cet exemple, la section des valeurs définit l'adresse IP de198.51.100.1
sur198.51.100.3
: -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche les détails du groupe créé. Notez la valeurgroupid
car elle sera utilisée ultérieurement pour affecter ce groupe à une stratégie.
Créer une stratégie
Dans cette section, vous allez créer une stratégie pour le niveau d'assurance et l'agent d'intégration précédemment créés.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la définition des entités système -> policy/v1.
-
Sélectionnez Créer une stratégie. Cette demande envoie une demande POST à l'adresse
/oaa-policy/policy/v1
et crée une stratégie pour l'agent d'intégration et le niveau de garantie précédemment créés, appelésPolicy1
. Dans le corps, modifiez la valeur deagentgid
afin qu'elle corresponde à la valeur renvoyée précédemment : -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche les détails de la stratégie créée. Notez la valeurpolicygid
car elle sera utilisée ultérieurement pour affecter une règle à cette stratégie.
Créer une règle
Dans cette section, vous allez créer une règle pour la stratégie.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la définition des entités système -> policy/v1 -> {policygid} -> rule > {ruleid}.
-
Sélectionnez Définir une nouvelle règle pour la stratégie. Cette demande envoie une demande POST à l'adresse
/oaa-policy/policy/v1/:policygid/rule
. Dans l'onglet Paramètres, modifiez la valeur depolicygid
afin qu'elle corresponde à la valeur de la stratégie renvoyée précédemment. Dans le corps, sousconditionMap
, modifiez les valeurs sousexpression
etvalues
et définissez surgroupId
du groupeSecureIP
créé précédemment. Sousresults
, définissez la valeur deaction
de sorte qu'elle corresponde à la valeurgroupId
du groupeFactorGroup1
créé précédemment :Description de l'image createrule.jpg
Dans ce qui précède, la règle indique que si l'adresse IP de l'utilisateur final effectuant la demande d'authentification est l'une de celles définies dans le groupe
SecureIP
, définissez les facteurs d'authentification sur ceux définis dansFactorGroup1
. -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît et que le corps de la réponse affiche les détails de la règle créée. Notezrulegid
pour référence ultérieure.
Créer des préférences utilisateur
Dans cette section, vous créez un utilisateur user1
et enregistrez ses préférences de facteur.
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour les préférences utilisateur -> preferences/v1.
-
Sélectionnez User Preferences are created/registered. Cette demande envoie une demande POST à l'adresse
/oaa/runtime/preferences/v1
. Dans le corps, entrezuserId
à créer et legroupId
correspondant. Dans l'exemple ci-dessous,user1
est créé dans le groupeDefault
et enregistre l'utilisateur pour les facteurs Email et OMATOTP. Remplacez la valeur de l'adresse électronique par une adresse valide. Remplacezsecret_key
pour OMATOTP par la valeur de votre choix à utiliser dans l'application Oracle Mobile Authenticator. -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que l'élément
Status: 200 OK
apparaît et que l'utilisateur et ses préférences ont été créés et enregistrés.
Challenge à l'utilisateur, initialiser la question d'authentification et valider
Dans cette section, vous testez une question de vérification utilisateur pour user1
par rapport à la règle créée précédemment dans Créer une règle de stratégie. Si la règle est validée, les facteurs enregistrés pour cet utilisateur sont renvoyés. Après avoir choisi un facteur avec lequel s'authentifier, une demande d'initialisation est envoyée pour demander le mot de passe à usage unique pour ce facteur. Un mot de passe à usage unique de facteur valide est ensuite saisi et validé.
Avant de démarrer cette section, assurez-vous qu'un compte Oracle est ajouté à Oracle Mobile Authenticator avec Key
défini sur la valeur secret_key
saisie dans Créer des préférences utilisateur. Reportez-vous à Configuration d'un compte dans Oracle Mobile Authenticator
-
Dans l'onglet Collections, accédez à API REST d'authentification avancée Oracle > API REST pour la question de vérification utilisateur -> Défi Défi utilisateur, Initaliser la question de vérification, Valider la question de vérification.
-
Sélectionnez Utilisateur du défi. Cette demande envoie une demande POST à l'adresse
/oaa/runtime/authn/v1
. Dans le corps, entrezuserId
pouruser1
et legroupId
correspondant. Dans l'exemple ci-dessous, la question de vérification sera appliquée àuser1
par rapport à l'agent d'intégration d'API créé précédemment dans Créer une API d'agent d'intégration. Entrez les valeurs pourclientSecret
etclientId
pour cet agent d'API. DansipAddr
, entrez une adresse IP définie dans le groupeSecureIP
créé précédemment : -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît. Un messageOAA-40001
est renvoyé, indiquantAuthentication Required
. Les facteurs inscrits àuser1
(Email et OMATOTP) sont renvoyés aveccorrelationId
. Notez la valeurcorrelationId
à utiliser dans les demandes suivantes : -
Sous Utilisateur du défi, Initialiser la question de vérification, Valider la question de vérification, sélectionnez Initialiser la question de vérification. Cette opération envoie une demande PUT à l'adresse
/oaa/runtime/authn/v1
. Dans Corps, entrezcorrelationId
renvoyé dans la réponse précédente. Dans cet exemple, nous choisissons d'utiliser le facteur OMATOTP : -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît. Un messageOAA-40001
est renvoyé, indiquantAuthentication Required
pour OMATOTP. Une valeurnonce
est renvoyée pour l'élémentcorrelationId
associé. Notez la valeurnonce
pour utiliser la demande suivante : -
Sous Utilisateur du défi, Initialiser la question de vérification, Valider la question de vérification, sélectionnez Valider la question de vérification. Cette opération envoie une demande PUT à l'adresse
/oaa/runtime/authn/v1
. Dans Corps, entrezcorrelationId
etnonce
renvoyés dans la réponse précédente. Entrez un mot de passe à usage unique valide à partir d'Oracle Mobile Authenticator dansChallengeAnswer
: -
Cliquez sur Envoyer.
-
Dans la réponse, vérifiez que
Status: 200 OK
apparaît. Si la validation du mot de passe à usage unique aboutit, un messageOAA-40004
est renvoyé, indiquant que l'utilisateur estAuthenticated
:
En savoir plus
- Oracle Advanced Authentication
- API d'administration OAA
- API runtime OAA
- Utiliser l'agent RADIUS d'Oracle avec l'authentification avancée Oracle pour l'authentification à plusieurs facteurs
- Intégrer Oracle Access Management avec Oracle Advanced Authentication
Commentaires
Pour faire part de vos commentaires sur ce tutoriel, veuillez contacter idm_user_assistance_ww_grp@oracle.com
Remerciements
- Auteur - Russ Hodgson
Ressources de formation supplémentaires
Explorez d'autres exercices sur docs.oracle.com/learn ou accédez à davantage de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir Oracle Learning Explorer.
Pour consulter la documentation du produit, consultez le centre d'aide Oracle.
Use Oracle Advanced Authentication REST APIs with Postman
F53392-01
February 2022
Copyright © 2022, Oracle and/or its affiliates.