Fonctionnement des rôles eIAM
Après l'authentification réussie d'un utilisateur, les rôles de l'utilisateur sont ajoutés aux jetons d'authentification dans l'eIAM à partir de l'eIAM-AM (Access Management) de l'application en tant qu'attributs.La seule exception est le modèle d'intégration "AuthOnly", car l'application renonce ici à l'utilisation de l'eIAM-AM.
Le service eIAM propose un concept de rôles à deux niveaux pour la gestion des accès. L'administration des rôles s'effectue dans l'eIAM-AM.
On distingue les rôles d'accès et les rôles d'application.
Des exemples de rôles et dans un jeton d'authentification à l'application sont décrits pour le protocole correspondant (SAML ou OIDC) sous eIAM Prestations 1 - Fédération d'identités.
Rôles d'accès
Ces rôles contrôlent si un utilisateur est en principe autorisé à accéder à l'application. Pour chaque application, il existe ici deux rôles possibles : Le "rôle d'autorisation" (.ALLOW) et le "rôle de refus" (.DENY).Cas d'utilisation STS
En l'absence des rôles d'accès nécessaires, eIAM appelle la fonction eIAM-AccessRequest, avec laquelle l'utilisateur peut demander l'autorisation manquante. La demande peut se faire par formulaire (interactif) ou le rôle d'autorisation peut être attribué automatiquement par eIAM (mode silencieux). Sous "Autres cas d'utilisation" ci-dessous, différentes méthodes d'onboarding sont esquissées. Pour plus d'informations sur ces méthodes, voir eIAM Leistungen 5 - Onboarding.
IMPORTANT : La vérification du rôle pour l'accès aux ressources de l'application (autorisation) n'est pas prise en charge par eIAM. Seule une vérification des rôles est effectuée dans le cadre de la demande d'accès. Si un rôle est présent, que ce soit Allow ou Deny, l'accès à l'application n'est pas bloqué par eIAM.
Cas d'utilisation RP-PEP (eIAM-Web PEP)
Une des raisons du concept de rôle à deux niveaux est qu'aucune adaptation n'est nécessaire sur le RP-PEP (eIAM Web PEP) lorsque des rôles d'application sont ajoutés ou supprimés dans l'AM eIAM.
Les rôles d'accès sont contrôlés et appliqués par eIAM Web PEP (RP-PEP). En principe, eIAM fait la distinction entre le "rôle d'autorisation" (.ALLOW) et le "rôle de refus" (.DENY).
Rôle .ALLOW | Rôle .DENY | Accès à l'application |
---|---|---|
❌ | ❌ | Non, onboarding nécessaire |
✅ | ❌ | Oui |
❌ | ✅ | Non |
✅ | ✅ | Non |
Si l'utilisateur ne possède pas le rôle d'autorisation requis pour accéder à la ressource, la requête de l'utilisateur est déjà bloquée sur le PEP web eIAM.
De même, la requête de l'utilisateur à la ressource est bloquée si le BVA lui a attribué le "Deny-Rolle". C'est également le cas lorsque les rôles "Allow" et "Deny" sont tous deux définis.
L'absence du rôle d'accès requis peut être demandée via le pattern d'onboarding correspondant (eIAM Prestations 5 - Onboarding).
Autres cas d'utilisation
Dans le cadre d'une intégration avec le pattern de eIAM Prestations 6 - Gestion déléguée, un concept de rôles à deux niveaux n'est pas absolument nécessaire tant que l'application se charge de l'autorisation à l'aide des rôles à granularité fine envoyés dans le jeton.
Si la gestion des accès eIAM n'est pas nécessaire, on parle d'un modèle AuthOnly-Pattern. Dans ce cas, outre l'identité, aucun rôle n'est fourni par eIAM dans le jeton.
Convention de nommage des rôles granulaires dans eIAM
La dénomination des rôles à granularité grossière dans eIAM est standardisée et se compose du nom de l'application tel qu'il est géré dans l'AM eIAM et du qualificatif pour le rôle. Le séparateur est un point " . " est utilisé.
Rôle Allow grossièrement granulaire :
<nom d'application de eIAM-AM>.ALLOW
Rôle Deny grossièrement granulaire :
<nom d'application de eIAM-AM>.DENY
Rôles d'application
Les rôles à granularité fine d'un utilisateur servent à contrôler les accès aux masques web et aux données d'une application. Un utilisateur peut avoir un ou plusieurs rôles à granularité fine pour une application.Conventions de nommage des rôles à granularité fine dans l'eIAM
La dénomination des rôles à granularité fine dans l'eIAM est standardisée et se compose du nom de l'application tel qu'il est géré dans l'eIAM-AM et du qualificatif pour le rôle. Le séparateur est un point " . " est utilisé.
<nom de l'application dans eIAM-AM>.<nom du rôle>