unifiedRoleAssignment の作成

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

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

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

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

アクセス許可

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

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

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

重要

職場または学校アカウントを使用してアクセスを委任するには、サインインしたユーザーに、サポートされている Microsoft Entra ロール、またはこの操作に必要なアクセス許可を付与するカスタム ロールが割り当てられている必要があります。 特権ロール管理者 は、この操作でサポートされる最小特権ロールです。

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

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

Exchange Online プロバイダーの場合

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

HTTP 要求

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

POST /roleManagement/directory/roleAssignments

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

POST /roleManagement/entitlementManagement/roleAssignments

Exchange Online プロバイダーの役割の割り当てを作成します。

POST /roleManagement/exchange/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} リソース アプリケーションをスコープ設定する
  • /attributeSets/{attributeSet-ID} 属性セットをスコープ指定するには

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

    Exchange Online プロバイダーの場合、このプロパティは次の形式をサポートします。
  • / テナント全体のスコープ
  • /Users/{ObjectId of user} ロールの割り当てを特定のユーザーに限定します
  • /AdministrativeUnits/{ObjectId of AU} ロールの割り当てを 1 つの管理単位に限定するには
  • /Groups/{ObjectId of group} 特定のグループの直接のメンバーにロールの暗殺の範囲を設定するには

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

    応答

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

    例

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

    要求

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

    POST https://graph.microsoft.com/beta/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/beta/$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/beta/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/beta/$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 : 属性スコープを設定したロール割り当ての作成

    要求

    次の例では、Engineering という名前の属性セット スコープを持つプリンシパルに、属性割り当て管理者ロールを割り当てます。 Microsoft Entra カスタム セキュリティ属性と属性セット スコープの詳細については、「 Microsoft Entra ID のカスタム セキュリティ属性へのアクセスを管理する」を参照してください。

    POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "58a13ea3-c632-46ae-9ee0-9c0d43cd7f3d",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/attributeSets/Engineering"
    }
    

    応答

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

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

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "oz6hWDLGrkae4JwNQ81_PU-mYqx8m71OpqEQPdN1u",
        "roleDefinitionId": "58a13ea3-c632-46ae-9ee0-9c0d43cd7f3d",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/attributeSets/Engineering"
    }
    

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

    要求

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

    POST https://graph.microsoft.com/beta/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/beta/$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"
    }
    

    例 5: 管理単位スコープを使用して Exchange Online プロバイダーの役割割り当てを作成する

    要求

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

    POST https://graph.microsoft.com/beta/roleManagement/exchange/roleAssignments
    Content-type: application/json
    
    {
        "principalId": "/ServicePrincipals/0451dbb9-6336-42ea-b58f-5953dc053ece",
        "roleDefinitionId": "f66ab1ee-3cac-4d03-8a64-dadc56e563f8",
        "directoryScopeId": "/AdministrativeUnits/8b532c7a-4d3e-4e99-8ffa-2dfec92c62eb",
        "appScopeId": null
    }
    

    応答

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

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/exchange/roleAssignments/$entity",
        "id": "c5dd3ab8-374f-42e9-b163-eb7c54b53755",
        "principalId": "/ServicePrincipals/0451dbb9-6336-42ea-b58f-5953dc053ece",
        "roleDefinitionId": "f66ab1ee-3cac-4d03-8a64-dadc56e563f8",
        "directoryScopeId": "/AdministrativeUnits/8b532c7a-4d3e-4e99-8ffa-2dfec92c62eb",
        "appScopeId": null
    }