Remarque :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction au niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeur pour les informations d'identification Oracle Cloud Infrastructure, la location et les compartiments. A la fin de votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Configurer le provisionnement juste à temps pour le fournisseur d'identités basé sur SAML dans IDCS/domaines d'identité
Introduction
Le provisionnement juste à temps (JIT) basé sur SAML permet d'automatiser la création d'identités utilisateur dans Identity Cloud Service pour les nouveaux utilisateurs. Les comptes utilisateur sont créés lorsque l'utilisateur tente d'accéder à l'application cible via SSO. Outre la création d'utilisateurs, JIT peut également accorder et révoquer des appartenances à des groupes dans le cadre du provisionnement. JIT peut également être utilisé pour mettre à jour les utilisateurs provisionnés via la mise en correspondance des attributs source (Fournisseur de services - SP) avec le fournisseur d'identités.
En activant le provisionnement JIT pour votre fournisseur d'identités avec IDCS, vous pourrez gérer les utilisateurs plus efficacement et cela vous aidera à réduire le coût d'administration de la synchronisation manuelle des utilisateurs.
Avantages de l'utilisation du provisionnement JIT
-
Pour les utilisateurs consommateurs de ressources pour lesquels vous ne souhaitez pas charger initialement tous les utilisateurs dans Identity Management Cloud Service (IDCS), mais qui souhaitent les créer à la volée lorsque les utilisateurs tentent de se connecter.
-
Réduction du coût d'administration car les utilisateurs n'ont pas besoin d'être créés manuellement dans le fournisseur d'identités.
Objectif
Configurer le provisionnement juste à temps pour un fournisseur d'identités basé sur SAML dans IDCS/domaines d'identité via des API REST.
Remarque : si votre location est déjà migrée vers des domaines d'identité et que vous souhaitez effectuer cette configuration via la console, reportez-vous au lien suivant : Ajout d'un SAML juste à temps IdP.
Prérequis
-
IDCS doit disposer d'un niveau de licence standard pour utiliser la fonctionnalité de provisionnement JIT. JIT est disponible dans tous les types de domaine lorsque vous utilisez des domaines d'identité soumis à des limites d'objet pour chaque niveau. Pour plus d'informations, reportez-vous à Présentation des types de domaine d'identité.
-
La fonctionnalité de provisionnement JIT dans IDCS est désactivée par défaut et doit être activée via une demande de service Oracle.
-
IDP doit être configuré avec IDCS/Domaine d'identité pour l'accès avec connexion unique via SAML. Pour plus d'informations, reportez-vous à Ajout d'un fournisseur d'identités.
-
Compte utilisateur de domaine d'identité/IDCS disposant de privilèges d'administrateur de sécurité.
-
Configurez Postman pour l'utilisation des adresses REST d'Oracle Identity Cloud Service/Domaines d'identité. Pour plus d'informations, reportez-vous à Utilisation des API REST Oracle Identity Cloud Service avec Postman.
Tâche 1 : extraction de la liste des fournisseurs d'identités configurés dans votre location IDCS/Domaines d'identité
-
Utilisez l'adresse REST suivante : https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders (opération GET) et localisez l'ID du fournisseur d'identités pour lequel activer le provisionnement JIT.
Exemple de sortie :

Tâche 2 : extraire les détails du fournisseur d'identités SAML configuré
Extrayez les détails du fournisseur d'identités SAML configuré dans lequel vous souhaitez activer le provisionnement JIT à l'aide de l'ID de fournisseur situé à partir de la tâche 1.
-
Utilisez l'adresse REST suivante : https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders/{IDP provider ID} (opération GET).
Exemple de sortie :

Tâche 3 : mise à jour des paramètres du fournisseur d'identités pour activer le provisionnement JIT
Mettez à jour les paramètres du fournisseur IDP pour activer le provisionnement JIT pour votre fournisseur d'identités SAML à l'aide d'une opération PATCH.
- Utilisez l'adresse REST suivante : https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders/{IDP provider ID} (opération PATCH).
Remarque :
- L'exemple de code suivant n'est qu'à titre de référence et il est recommandé de consulter la documentation Oracle pour plus de détails sur chaque attribut avant de l'activer.
- Les groupes doivent être pré-créés dans IDCS si vous souhaitez ajouter des appartenances à des groupes.
Exemple de corps :
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "replace",
"path": "jitUserProvEnabled",
"value": true
},{
"op": "replace",
"path": "jitUserProvCreateUserEnabled",
"value": true
},
{
"op": "replace",
"path": "jitUserProvAttributeUpdateEnabled",
"value": true
},
{
"op": "replace",
"path": "jitUserProvGroupAssertionAttributeEnabled",
"value": false
},
{
"op": "replace",
"path": "jitUserProvGroupSAMLAttributeName",
"value": "groups"
},
{
"op": "replace",
"path": "jitUserProvGroupAssignmentMethod",
"value": "Overwrite"
}
]
}
Le tableau suivant décrit les propriétés du fournisseur d'identités mentionnées ci-dessus.
| Propriété de fournisseur d'identités | Description |
|---|---|
| jitUserProvEnabled | Propriété booléenne permettant d'activer/de désactiver la fonction de provisionnement JIT SAML pour le fournisseur d'identités configuré. |
| jitUserProvCreateUserEnabled | Propriété booléenne pour la création d'utilisateur, basée sur l'assertion entrante, si l'utilisateur n'existe pas encore. |
| jitUserProvAttributeUpdateEnabled | Propriété booléenne pour la mise à jour utilisateur basée sur l'assertion entrante si l'utilisateur existe déjà. |
| jitUserProvGroupAssertionAttributeEnabled | Propriété booléenne indiquant si les appartenances à un groupe doivent être affectées à l'utilisateur en fonction d'une liste de noms de groupe reçus du fournisseur d'identités dans un attribut SAML. |
| jitUserProvGroupSAMLAttributeName | Nom de l'attribut d'assertion SAML qui contiendra les groupes à affecter à l'utilisateur, si la propriété jitUserProvGroupAssertionAttributeEnabled a la valeur True. |
| jitUserProvGroupAssignmentMethod | Propriété de chaîne qui contrôle la façon dont les appartenances au groupe seront affectées à l'utilisateur Identity Cloud Service : Ecraser/fusionner. |
Après cette opération, le provisionnement JIT doit être activé pour le fournisseur d'identités SAML et vous pouvez le confirmer en exécutant l'opération GET mentionnée dans la tâche 2. L'image suivante présente un exemple de sortie.

Vous obtenez ainsi l'ID d'attribut mis en correspondance qui sera utilisé dans l'adresse suivante pour mettre en correspondance les attributs de SP avec les attributs de fournisseur d'identités.

Tâche 4 : définissez le mappage jitUserProvAttributes du fournisseur d'identités SAML pour le provisionnement des utilisateurs
Après avoir activé le provisionnement JIT pour votre fournisseur d'identités SAML, l'étape suivante consiste à mettre en correspondance les attributs de fournisseur de services avec les attributs de fournisseur d'identités. Utilisez l'ID d'attribut mappé de la tâche 3 avec l'adresse REST décrite dans cette section.
Remarque :
- Avant d'appliquer des patches aux attributs à cette adresse, il est recommandé de vérifier l'assertion SAML pour rechercher les détails de l'assertion côté SP (
managedObjectAttributeName). Dans la vérification d'assertion, recherchez<saml:AttributeStatement>qui contiendra les informations sur les attributs SAML. Utilisez la valeur soussaml:Attribute Nameet mettez-la en correspondance avec l'attribut IDCS correspondant.- Utilisez cette adresse maintenant en tant qu'opération PATCH avec l'exemple de code de corps suivant pour mettre à jour la correspondance d'attributs. Pour le confirmer, exécutez une opération GET sur le même point d'extrémité et recherchez les valeurs mises à jour des attributs mis en correspondance.
-
Utilisez l'adresse REST suivante : https://idcs-xxxx.identity.oraclecloud.com/admin/v1/MappedAttributes/{Mapped Attribute ID} (opération GET)
Remarque : Il s'agit de l'exemple de fragment de code (pour référence uniquement) pour le mappage d'attributs. Mettez-le à jour en conséquence conformément à l'assertion de votre fournisseur d'identités SAML configuré et enregistrez-le.
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ], "Operations": [ { "op": "replace", "path": "attributeMappings", "value": [ { "managedObjectAttributeName": "$(assertion.mail)", "idcsAttributeName": "userName" }, { "managedObjectAttributeName": "$(assertion.firstname)", "idcsAttributeName": "name.givenName" }, { "managedObjectAttributeName": "$(assertion.lastname)", "idcsAttributeName": "name.familyName" }, { "managedObjectAttributeName": "$(assertion.mail)", "idcsAttributeName": "emails[primary eq true and type eq \"work\"].value" } ] } ] }
Tâche 5 : configuration de l'attribut de mise à jour de correspondance jitUserProvAttributes
Configurez l'attribut jitUserProvAttributes Mapping Update à partir du fournisseur de services - SP vers le fournisseur d'identités - IDP.
-
Utilisez l'adresse REST suivante : https://idcs-xxxx.identity.oraclecloud.com/admin/v1/MappedAttributes/{Mapped Attribute ID} (opération PATCH) et corrigez l'adresse REST avec le code de la tâche 4 dans le corps.
-
Vérifiez que les modifications ont été mises à jour en exécutant l'opération GET.
Tâche 6 : test du provisionnement JIT
- Dans une nouvelle session de navigateur, essayez de vous connecter à IDCS sur ma console.
- IDCS affiche l'écran de connexion.
- Sélectionnez le fournisseur d'identités configuré qui est maintenant activé avec le provisionnement JIT.
- IDCS vous redirige vers la page de connexion du fournisseur d'identités pour vous connecter.
- Entrez les informations d'identification valides de l'utilisateur qui n'existe pas dans IDCS.
- Après une connexion réussie, vous devez acheminer vers IDCS l'écran de ma console.
- Validez via le compte d'administration que l'utilisateur a été créé avec succès dans IDCS.
Liens connexes
- Utilisation des fournisseurs d'identités
- Utiliser les API REST Oracle Identity Cloud Service avec Postman
Remerciements
Auteur - Chetan Soni (ingénieur solutions cloud)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour consulter la documentation produit, consultez Oracle Help Center.
Configure Just-In-Time Provisioning for SAML based IDP in IDCS/Identity Domains
F76244-01
January 2023
Copyright © 2023, Oracle and/or its affiliates.