Tout cela est expliqué dans le paragraphe OpenAM's Developer's Guide 3.4.
L'URL REST pour votre module personnalisé serait:
http://www.example.com:8080/openam/json/authenticate?authIndexType=module&authIndexValue=CURAuthn
Si vous module ne pas utiliser les informations d'identification nom d'utilisateur/mot de passe standard, vous devrez passer vos informations d'identification dans le corps de la requête JSON .
Vous commencez par l'envoi d'une requête vide POST OpenAM:
$ curl \
--request POST \
--header "Content-Type: application/json" \
http://www.example.com:8080/openam/json/authenticate?authIndexType=module&authIndexValue=CURAuthn
Vous devriez obtenir une réponse similaire à celle (en fonction de votre callbacks personnalisés):
{
"authId": "eyAid...GDYaEQ",
"template": "",
"stage": "Module11",
"header": "Using CURAuthn",
"callbacks": [
{
"type": "NameCallback",
"output": [
{
"name": "prompt",
"value": "FirstCallback"
}
],
"input": [
{
"name": "IDToken1",
"value": ""
}
]
},
{
"type": "NameCallback",
"output": [
{
"name": "prompt",
"value": "SecondCallback"
}
],
"input": [
{
"name": "IDToken2",
"value": ""
}
]
},
//More callbacks here
]
}
Après que Accumulez les informations d'identification de l'utilisateur, remplissez les valeurs vides et renvoyez la charge JSON vers la même URL. Assurez-vous que vous utilisez le même "authId" tout au long du processus d'authentification.
J'ai écrit un blog post sur les chaînes d'authentification personnalisées et comment communiquer avec elles via REST. Jetez un coup d'oeil, cela pourrait être utile.