Partager via


Type de ressource unifiedRolePermission

Espace de noms: microsoft.graph

Représente une collection d’actions de ressources autorisées et les conditions qui doivent être remplies pour que l’action soit autorisée. Les actions de ressource sont des tâches qui peuvent être effectuées sur une ressource. Par exemple, une ressource d’application peut prendre en charge les actions de création, de mise à jour, de suppression et de réinitialisation du mot de passe.

Propriétés

Propriété Type Description
allowedResourceActions String collection Ensemble de tâches qui peuvent être effectuées sur une ressource. Obligatoire.
condition Chaîne Contraintes facultatives qui doivent être remplies pour que l’autorisation soit effective. Non pris en charge pour les rôles personnalisés.
excludedResourceActions String collection Ensemble de tâches qui ne peuvent pas être effectuées sur une ressource. Pas encore pris en charge.

propriété allowedResourceActions

Voici le schéma des actions de ressources :

{Namespace}/{Entity}/{PropertySet}/{Action}  

Par exemple : microsoft.directory/applications/credentials/update.

  • {Namespace} : services qui exposent la tâche. Par exemple, toutes les tâches dans l’ID Microsoft Entra utilisent l’espace de noms microsoft.directory.
  • {Entity} : fonctionnalités logiques ou composants exposés par le service dans Microsoft Graph. Par exemple, applications, servicePrincipals ou groups.
  • {PropertySet} - Facultatif. Propriétés ou aspects spécifiques de l’entité pour laquelle l’accès est accordé. Par exemple, microsoft.directory/applications/authentication/read accorde la possibilité de lire l’URL de réponse, l’URL de déconnexion et la propriété de flux implicite sur l’objet d’application dans l’ID Microsoft Entra. Voici les noms réservés pour les jeux de propriétés courants :
    • allProperties - Désigne toutes les propriétés de l’entité, y compris les propriétés privilégiées. Exemples : microsoft.directory/applications/allProperties/read et microsoft.directory/applications/allProperties/update.
    • basic - Désigne les propriétés de lecture courantes, mais exclut les propriétés privilégiées. Par exemple, microsoft.directory/applications/basic/update inclut la possibilité de mettre à jour des propriétés standard telles que le nom d’affichage.
    • standard - Désigne les propriétés de mise à jour courantes, mais exclut les propriétés privilégiées. Par exemple : microsoft.directory/applications/standard/read.
  • {Actions} : opérations accordées. Dans la plupart des cas, les autorisations doivent être exprimées en termes d’opérations CRUD ou allTasks. Les actions comprennent :
    • create - Possibilité de créer une nouvelle instance de l’entité.
    • read - Possibilité de lire un jeu de propriétés donné (y compris allProperties).
    • update - Possibilité de mettre à jour un jeu de propriétés donné (y compris allProperties).
    • delete - Possibilité de supprimer une entité donnée.
    • allTasks - Représente toutes les opérations CRUD (créer, lire, mettre à jour et supprimer).

condition, propriété

Les conditions définissent les contraintes qui doivent être remplies. Par exemple, une exigence que le principal soit propriétaire de la ressource cible. Voici les conditions prises en charge :

  • Self: « @Subject.objectId == @Resource.objectId»
  • Owner: « @Subject.objectId Any_of @Resource.owners»

Voici un exemple d’autorisation de rôle avec une condition que le principal soit le propriétaire de la ressource cible.

"rolePermissions": [
        {
            "allowedResourceActions": [
                "microsoft.directory/applications/basic/update",
                "microsoft.directory/applications/credentials/update"
            ],
            "condition":  "@Subject.objectId Any_of @Resource.owners"
        }
    ]

Les conditions ne sont pas prises en charge pour les rôles personnalisés.

Représentation JSON

La représentation JSON suivante montre le type de ressource.

{
  "@odata.type": "#microsoft.graph.unifiedRolePermission",
  "allowedResourceActions": ["String"],
  "excludedResourceActions": ["String"],
  "condition": "String"
}