6.8.3. Modifier la police de combinaison de permissions

La police de combinaison de permissions détermine comment les permissions sont définies quand un utilisateur possède plus d'un seul rôle. Peut être définie sur permissive ou rejecting. La valeur par défaut est permissive.
Quand elle est définie à permissive, si un rôle est assigné à l'utilisateur pour permettre une action, alors l'action sera autorisée.
Quand définie sur rejecting, si plusieurs rôles sont assignés à un utilissateur, alors aucune action ne sera requise. Lorsque la police est définie à rejecting, chaque utilisateur se verra assigner un rôle unique. Les utilisateurs ayant des rôles multiples ne seront pas en mesure d'utiliser l'outil de gestion de console ou jboss-cli.sh lorsque la police est définie sur rejecting.
La police de combinaison d'autorisations est configurée en affectant à l'attribut permission-combination-policy soit permissive ou rejecting. Cela peut être fait par l'outil jboss-cli.sh, ou en modifiant la configuration du serveur XML du fichier si le serveur est hors ligne.

Procédure 6.3. Définir la police de combinaison de permissions

  • Effectuer l'opération write-attribute de la ressource d'autorisation d'accès pour définir l'attribut permission-combination-policy au nom de la police requise.
    /core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=POLICYNAME)
    Les noms de police valide sont « rejecting » ou « permissive ».
    [standalone@localhost:9999 /] /core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=rejecting)
    {"outcome" => "success"}
    [standalone@localhost:9999 access=authorization]
    
Si le serveur est hors ligne, la configuration XML peut être modifiée pour changer la valeur de la politique de combinaison de permissions. Pour ce faire, modifiez l'attribut permission-combination-policy de l'élément de contrôle d'accès.
<access-control provider="rbac" permission-combination-policy="rejecting">
  <role-mapping>
    <role name="SuperUser">
      <include>
        <user name="$local"/>
      </include>
    </role>
  </role-mapping>
</access-control>