Créer unifiedRoleAssignment

Espace de noms: microsoft.graph

Créez un objet unifiedRoleAssignment .

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

L’une des autorisations suivantes est nécessaire pour appeler cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.

Pour le fournisseur d’annuaires (Microsoft Entra ID)

Type d’autorisation Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Déléguée (compte professionnel ou scolaire) RoleManagement.ReadWrite.Directory
Déléguée (compte Microsoft personnel) Non prise en charge.
Application RoleManagement.ReadWrite.Directory

Importante

Dans les scénarios délégués avec des comptes professionnels ou scolaires, l’utilisateur connecté doit se voir attribuer un rôle Microsoft Entra pris en charge ou un rôle personnalisé avec une autorisation de rôle prise en charge. Administrateur de rôle privilégié est le rôle le moins privilégié pris en charge pour cette opération.

Pour le fournisseur de gestion des droits d’utilisation

Type d’autorisation Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Déléguée (compte professionnel ou scolaire) EntitlementManagement.ReadWrite.All
Déléguée (compte Microsoft personnel) Non prise en charge.
Application EntitlementManagement.ReadWrite.All

Requête HTTP

Créez une attribution de rôle pour le fournisseur d’annuaires :

POST /roleManagement/directory/roleAssignments

Créez une attribution de rôle pour le fournisseur de gestion des droits d’utilisation :

POST /roleManagement/entitlementManagement/roleAssignments

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.

Corps de la demande

Dans le corps de la demande, fournissez une représentation JSON d’un objet unifiedRoleAssignment .

Vous pouvez spécifier les propriétés suivantes lors de la création d’un unifiedRoleAssignment.

Propriété Type Description
appScopeId String Obligatoire. Identificateur de l’étendue spécifique de l’application lorsque l’étendue d’affectation est spécifique à l’application. L’étendue d’une affectation détermine l’ensemble des ressources pour lesquelles l’accès au principal a été accordé. Les étendues d’application sont des étendues qui sont définies et comprises par une application de ressource uniquement.

Pour le fournisseur de gestion des droits d’utilisation, utilisez cette propriété pour spécifier un catalogue, par exemple /AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997.

appScopeId ou directoryScopeId doit être spécifié.
directoryScopeId String Obligatoire. Identificateur de l’objet directory représentant l’étendue de l’affectation. L’étendue d’une affectation détermine l’ensemble des ressources pour lesquelles l’accès au principal a été accordé. Les étendues d’annuaire sont des étendues partagées stockées dans l’annuaire qui sont comprises par plusieurs applications, contrairement aux étendues d’application définies et comprises par une application de ressource uniquement.

Pour le fournisseur d’annuaires (Microsoft Entra ID), cette propriété prend en charge les formats suivants :
  • / pour l’étendue à l’échelle du locataire
  • /administrativeUnits/{administrativeunit-ID} pour étendre l’étendue à une unité administrative
  • /{application-objectID} pour étendre à une application de ressource

    Pour le fournisseur de gestion des droits d’utilisation, / pour l’étendue à l’échelle du locataire. Pour étendre l’étendue à un catalogue de packages d’accès, utilisez la propriété appScopeId .

    appScopeId ou directoryScopeId doit être spécifié.
  • principalId String Obligatoire. Identificateur du principal auquel l’attribution est accordée.
    roleDefinitionId String Identificateur du unifiedRoleDefinition pour lequel l’affectation est destinée. En lecture seule. Prend en charge $filter (eq, in).

    Réponse

    Si elle réussit, cette méthode renvoie un 201 Created code de réponse et un nouvel objet unifiedRoleAssignment dans le corps de la réponse.

    Exemples

    Exemple 1 : Créer une attribution de rôle avec l’étendue du locataire

    Demande

    L’exemple suivant illustre une demande. Notez l’utilisation de roleTemplateId pour roleDefinitionId. roleDefinitionId peut être l’ID de modèle à l’échelle du service ou le roleDefinitionId spécifique au répertoire.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    { 
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Réponse

    L’exemple suivant illustre la réponse.

    Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "YUb1sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHVi2I-1",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Exemple 2 : Créer une attribution de rôle avec une étendue d’unité administrative

    Demande

    L’exemple suivant attribue le rôle Administrateur d’utilisateurs à un principal avec une étendue d’unité administrative.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Réponse

    L’exemple suivant illustre la réponse.

    Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "BH21sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHIWb7-1",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Exemple 3 : Créer une attribution de rôle avec l’étendue de l’application

    Demande

    L’exemple suivant attribue à un principal le rôle Administrateur d’application au niveau de l’étendue de l’application. L’ID d’objet de l’inscription de l’application est 661e1310-bd76-4795-89a7-8f3c8f855bfc.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "principalId": "6b937a9d-c731-465b-a844-2d5b5368c161",
        "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3",
        "directoryScopeId": "/661e1310-bd76-4795-89a7-8f3c8f855bfc"
    }
    

    Réponse

    L’exemple suivant illustre la réponse.

    Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "kl2Jm9Msx0SdAqasLV6lw516k2sxx1tGqEQtW1NowWEQEx5mdr2VR4mnjzyPhVv8-1",
        "principalId": "6b937a9d-c731-465b-a844-2d5b5368c161",
        "directoryScopeId": "/661e1310-bd76-4795-89a7-8f3c8f855bfc",
        "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3"
    }
    

    Exemple 4 : Créer une attribution de rôle avec l’étendue du catalogue de packages d’accès

    Demande

    L’exemple suivant illustre une demande.

    POST https://graph.microsoft.com/v1.0/roleManagement/entitlementManagement/roleAssignments
    Content-type: application/json
    
    {
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }
    

    Réponse

    L’exemple suivant illustre la réponse.

    Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/entitlementManagement/roleAssignments/$entity",
        "id": "f3092518-7874-462e-93e9-0cd6c11ffc52",
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }