Utilisation des applications
Les cas d'utilisation de cette section fournissent les étapes pour accorder AppRoles à une application et fournissent également des exemples de demandes de création et d'activation d'applications OAuth. Chaque cas d'utilisation fournit également les attributs d'application requis.
Cette section traite des sujets suivants :
Accorder AppRoles à une application
Utilisez l'exemple suivant pour créer une demande qui accorde des rôles d'application à une application.
Cet exemple comprend les étapes suivantes :
Étape 1 : Identifiez AppRole
Identifiez le fichier AppRole à affecter.
GET HOST/admin/v1/AppRoles?filter=app.value eq "IDCSAppId"
{
"displayName": "User Administrator",
"id": "...",
"uniqueName": "IDCSAppId_User Administrator",
"app": {
"name": "IDCSApp",
"value": "IDCSAppId",
"display": "IDCS Application",
"$ref": "..."
},
}
Étape 2 : Extraire les détails
Extraire les détails de l'application cible.
GET {{HOST}}/admin/v1/Apps?filter=displayName eq "target-appname"
{
"displayName": "target-appname",
"id": "...",
"grantedAppRoles": [
{
"value": "...",
"$ref": "...",
"appId": "IDCSAppId",
"display": "User Administrator",
"type": "direct",
"appName": "IDCSApp",
"adminRole": true
},
{
"value": "...",
"$ref": "...",
"appId": "IDCSAppId",
"display": "Identity Domain Administrator",
"type": "direct",
"appName": "IDCSApp",
"adminRole": true
}
]
Étape 3 : Accordez AppRole
Accordez AppRole à une application.
POST {{HOST}}/admin/v1/Grants
{
"grantee": {
"type": "App",
"value": "..." <------- "id" of the app/grantee that the AppRole will be assigned to.
},
"app": {
"value": "IDCSAppId" <------- the AppId to be assigned to the App.
},
"entitlement" : {
"attributeName": "appRoles",
"attributeValue": "..." <---- the "id" of the AppRole e.g, IDA
},
"grantMechanism" : "ADMINISTRATOR_TO_APP",
"schemas": ["urn:ietf:params:scim:schemas:oracle:idcs:Grant"]
}
Étape 4 : Récupérez à nouveau les détails
Extrayez à nouveau les détails de l'application cible.
GET {{HOST}}/admin/v1/Apps?filter=displayName eq "target-appname"
{
"displayName": "target-appname",
"id": "...",
"grantedAppRoles": [
{
"value": "...",
"$ref": "...",
"appId": "IDCSAppId",
"display": "User Administrator",
"type": "direct",
"appName": "IDCSApp",
"adminRole": true
},
{
"value": "...",
"$ref": "...",
"appId": "IDCSAppId",
"display": "Identity Domain Administrator",
"type": "direct",
"appName": "IDCSApp",
"adminRole": true
}
]