unifiedRoleAssignment を作成する

名前空間: microsoft.graph

新しい unifiedRoleAssignment オブジェクトを 作成します。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API を呼び出すには、次のいずれかのアクセス許可が必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。

ディレクトリ (Microsoft Entra ID) プロバイダーの場合

アクセス許可の種類 アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント) RoleManagement.ReadWrite.Directory
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション RoleManagement.ReadWrite.Directory

エンタイトルメント管理プロバイダーの場合

アクセス許可の種類 アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント) EntitlementManagement.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション EntitlementManagement.ReadWrite.All

HTTP 要求

ディレクトリ プロバイダーのロールの割り当てを作成します。

POST /roleManagement/directory/roleAssignments

エンタイトルメント管理プロバイダーのロールの割り当てを作成します。

POST /roleManagement/entitlementManagement/roleAssignments

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。

要求本文

要求本文で、 unifiedRoleAssignment オブジェクトの JSON 表現を指定します。

unifiedRoleAssignment を作成するときに、次のプロパティを指定できます。

プロパティ 説明
appScopeId String 必須です。 割り当てスコープがアプリ固有の場合のアプリ固有のスコープの識別子。 割り当てのスコープによって、プリンシパルにアクセス権が付与されているリソースのセットが決まります。 アプリ スコープは、リソース アプリケーションによってのみ定義され、理解されるスコープです。

エンタイトルメント管理プロバイダーの場合は、このプロパティを使用してカタログ (例: /AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997) を指定します。

appScopeId または directoryScopeId を指定する必要があります。
directoryScopeId String 必須です。 割り当てのスコープを表す ディレクトリ オブジェクト の識別子。 割り当てのスコープによって、プリンシパルにアクセス権が付与されているリソースのセットが決まります。 ディレクトリ スコープは、リソース アプリケーションによってのみ定義および理解されるアプリ スコープとは異なり、複数のアプリケーションによって認識されるディレクトリに格納されている共有スコープです。

ディレクトリ (Microsoft Entra ID) プロバイダーの場合、このプロパティは次の形式をサポートします。
  • / テナント全体のスコープの場合
  • /administrativeUnits/{administrativeunit-ID} を管理単位のスコープに設定する
  • /{application-objectID} をリソース アプリケーションのスコープに設定する

    エンタイトルメント管理プロバイダーの場合は、 / テナント全体のスコープです。 アクセス パッケージ カタログのスコープを設定するには、 appScopeId プロパティを使用します。

    appScopeId または directoryScopeId を指定する必要があります。
  • principalId String 必須です。 割り当てが付与されるプリンシパルの識別子。
    roleDefinitionId String 割り当てが対象の unifiedRoleDefinition の識別子。 読み取り専用。 $filter (eqin) をサポートします。

    応答

    成功した場合、このメソッドは 201 Created 応答コードと、応答本文に新しい unifiedRoleAssignment オブジェクトを返します。

    例 1: テナント スコープを使用してロールの割り当てを作成する

    要求

    次の例は要求を示しています。 roleDefinitionId の roleTemplateId の使用に注意してください。 roleDefinitionId には、サービス全体のテンプレート ID またはディレクトリ固有の roleDefinitionId を指定できます。

    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": "/"
    }
    

    応答

    次の例は応答を示しています。

    注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

    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": "/"
    }
    

    例 2: 管理単位スコープを使用してロールの割り当てを作成する

    要求

    次の例では、管理単位スコープを持つプリンシパルにユーザー管理者ロールを割り当てます。

    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"
    }
    

    応答

    次の例は応答を示しています。

    注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

    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"
    }
    

    例 3: アプリケーション スコープを使用してロールの割り当てを作成する

    要求

    次の例では、アプリケーション スコープでアプリケーション管理者ロールをプリンシパルに割り当てます。 アプリケーション登録のオブジェクト ID は 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"
    }
    

    応答

    次の例は応答を示しています。

    注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

    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"
    }
    

    例 4: アクセス パッケージ カタログ スコープを使用してロールの割り当てを作成する

    要求

    次の例は要求を示しています。

    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"
    }
    

    応答

    次の例は応答を示しています。

    注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

    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"
    }