6.9.3. Configurer l'attribution de rôle utilisateur avec jboss-cli.sh

Les rôles d'utilisateur à inclure ou à exclure peuvent être configurés dans la console de gestion et par le jboss-cli.sh. Cette section explique uniquement comment utiliser jboss-cli.sh.
La configuration du mappage des utilisateurs et des groupes en rôles se situe dans l'API de gestion à : /core-service=management/access=authorization en tant qu'éléments role-mapping.
Seuls les utilisateurs qui possèdent les rôles SuperUser ou Administrator peuvent faire cette configuration.

Procédure 6.7. Affichage de la Configuration Attribution de rôles

  1. Utiliser l'opération :read-children-names pour obtenir une liste complète des rôles configurés :
    /core-service=management/access=authorization:read-children-names(child-type=role-mapping)
    [standalone@localhost:9999 access=authorization] :read-children-names(child-type=role-mapping)
    {
        "outcome" => "success",
        "result" => [
            "ADMINISTRATOR",
            "DEPLOYER",
            "MAINTAINER",
            "MONITOR",
            "OPERATOR",
            "SuperUser"
        ]
    }
  2. Utiliser l'opération read-resource d'un mappage de rôle (role-mapping) pour obtenir toutes les informations sur un rôle particulier :
    /core-service=management/access=authorization/role-mapping=ROLENAME:read-resource(recursive=true)
    [standalone@localhost:9999 access=authorization] ./role-mapping=ADMINISTRATOR:read-resource(recursive=true)
    {
        "outcome" => "success",
        "result" => {
            "include-all" => false,
            "exclude" => undefined,
            "include" => {
                "user-theboss" => {
                    "name" => "theboss",
                    "realm" => undefined,
                    "type" => "USER"
                },
                "user-harold" => {
                    "name" => "harold",
                    "realm" => undefined,
                    "type" => "USER"
                },
                "group-SysOps" => {
                    "name" => "SysOps",
                    "realm" => undefined,
                    "type" => "GROUP"
                }
            }
        }
    }
    [standalone@localhost:9999 access=authorization]

Procédure 6.8. Ajouter un nouveau rôle

Cette procédure montre comment ajouter un role-mapping pour un rôle. Cela doit être effectué avant que le rôle puisse être configuré.
  • Utiliser l'opération add pour ajouter une nouvelle configuration de rôle.
    /core-service=management/access=authorization/role-mapping=ROLENAME:add
    ROLENAME est le nom du rôle du nouveau mappage.
    [standalone@localhost:9999 access=authorization] ./role-mapping=AUDITOR:add             
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]

Procédure 6.9. Ajouter un Utilisateur comme inclus dans un rôle

Cette procédure montre comment ajouter un Utilisateur dans la liste d'inclusions d'un rôle.
S'il n'y a pas de configuration de rôle, alors vous devez commencer par la saisie du role-mapping.
  • Utiliser l'opération add pour ajouter une entrée d'utilisateur dans la liste d'inclusions du rôle.
    /core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:add(name=USERNAME, type=USER)
    ROLENAME est le nom du rôle en cours de configuration.
    ALIAS est un nom unique pour ce mappage. Red Hat conseille d'utiliser une convention de mappage pour tous les alias comme user-USERNAME.
    USERNAME est le nom de l'utilisateur entrain d'être ajouté à la liste des inclusions.
     [standalone@localhost:9999 access=authorization] ./role-mapping=AUDITOR/include=user-max:add(name=max, type=USER)
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]

Procédure 6.10. Ajouter un Utilisateur comme exclus dans un rôle

Cette procédure montre comment ajouter un Utilisateur dans la liste d'exclusions d'un rôle.
S'il n'y a pas de configuration de rôle, alors vous devez commencer par la saisie du role-mapping.
  • Utiliser l'opération add pour ajouter une entrée d'utilisateur dans la liste d'exclusions du rôle.
    /core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:add(name=USERNAME, type=USER)
    ROLENAME est le nom du rôle en cours de configuration.
    USERNAME est le nom de l'utilisateur ajouté à la liste des exclusions.
    ALIAS est un nom unique pour ce mappage. Red Hat conseille d'utiliser une convention de mappage pour tous les alias comme user-USERNAME.
    [standalone@localhost:9999 access=authorization] ./role-mapping=AUDITOR/exclude=user-max:add(name=max, type=USER)
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]

Procédure 6.11. Configuration pour la suppression d'un rôle d'utilisateur d'inclusion

Cette procédure vous montre comment supprimer une entrée d'inclusion d'utilisateur d'un mappage de rôle.
  • Utiliser l'opération remove pour supprimer la saisie.
    /core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:remove
    ROLENAME est le nom du rôle en cours de configuration
    ALIAS est un nom unique pour ce mappage. Red Hat conseille d'utiliser une convention de mappage pour tous les alias comme user-USERNAME.
    [standalone@localhost:9999 access=authorization] ./role-mapping=AUDITOR/include=user-max:remove
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]
    Supprimer l'utilisateur de la liste d'inclusions ne permet pas de supprimer l'utilisateur du système, ni ne garantit que le rôle ne sera pas assigné à l'utilisateur. Le rôle peut être assigné sur la base de l'appartenance à un groupe.

Procédure 6.12. Configuration de la suppression d'un rôle d'utilisateur d'exclusion

Cette procédure vous montre comment supprimer une entrée d'exclusion d'utilisateur d'un mappage de rôle.
  • Utiliser l'opération remove pour supprimer la saisie.
    /core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:remove
    ROLENAME est le nom du rôle en cours de configuration.
    ALIAS est un nom unique pour ce mappage. Red Hat conseille d'utiliser une convention de mappage pour tous les alias comme user-USERNAME.
    [standalone@localhost:9999 access=authorization] ./role-mapping=AUDITOR/exclude=user-max:remove
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]
    Supprimer l'utilisateur de la liste d'exclusions ne permet pas de supprimer l'utilisateur du système, ni ne garantit que le rôle puisse être assigné à l'utilisateur. Les rôles peuvent être assignés sur la base de l'appartenance à un groupe.