roleDefinitions を作成する

名前空間: microsoft.graph

重要

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

RBAC プロバイダーの新しい unifiedRoleDefinition オブジェクトを作成します。 この機能には、Microsoft Entra ID P1 または P2 ライセンスが必要です。

現在、次の RBAC プロバイダーがサポートされています。

  • クラウド PC
  • デバイス管理 (Intune)
  • directory (Microsoft Entra ID)

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

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

アクセス許可

次の表は、サポートされている各リソースの種類でこの API を呼び出すために必要な最小特権のアクセス許可またはアクセス許可を示しています。 ベスト プラクティスに従って、最小限の特権のアクセス許可を要求します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください

クラウド PC プロバイダーの場合

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

デバイス管理 (Intune) プロバイダーの場合

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

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

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

HTTP 要求

デバイス管理プロバイダーのロール定義を作成するには:

POST /roleManagement/deviceManagement/roleDefinitions

ディレクトリ プロバイダーのロール定義を作成するには:

POST /roleManagement/directory/roleDefinitions

クラウド PC プロバイダーのロール定義を作成するには:

POST /roleManagement/cloudPc/roleDefinitions

要求ヘッダー

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

要求本文

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

次の表は、roleDefinition を作成するときに必要なプロパティを示しています。

パラメーター 説明
displayName string ロール定義の表示名。
isEnabled ブール値 ロールが割り当てに対して有効になっているかどうかを示すフラグ。 false の場合、ロールは割り当てに使用できません。
rolePermissions unifiedRolePermission コレクション ロールに含まれるアクセス許可の一覧。

応答

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

例 1:ディレクトリ プロバイダーのカスタム ロールを作成する

要求

POST https://graph.microsoft.com/beta/roleManagement/directory/roleDefinitions
Content-type: application/json

{
  "description": "Update basic properties of application registrations",
  "displayName": "Application Registration Support Administrator",
  "rolePermissions":
    [
        {
            "allowedResourceActions": 
            [
                "microsoft.directory/applications/basic/read"
            ]
        }
    ],
    "isEnabled" : "true"
}

応答

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleDefinitions/$entity",
    "id": "d5eec5e0-6992-4c6b-b430-0f833f1a815a",
    "description": "Update basic properties of application registrations",
    "displayName": "Application Registration Support Administrator",
    "isBuiltIn": false,
    "isEnabled": true,
    "templateId": "d5eec5e0-6992-4c6b-b430-0f833f1a815a",
    "version": null,
    "rolePermissions": [
        {
            "allowedResourceActions": [
                "microsoft.directory/applications/standard/read",
                "microsoft.directory/applications/basic/update"
            ],
            "condition": null
        }
    ],
    "inheritsPermissionsFrom": []
}

例 2: クラウド PC プロバイダーのカスタム ロールを作成する

要求

POST https://graph.microsoft.com/beta/roleManagement/cloudPC/roleDefinitions
Content-type: application/json

{
  "description": "An example custom role",
  "displayName": "ExampleCustomRole",
  "rolePermissions":
    [
        {
            "allowedResourceActions": 
            [
                "Microsoft.CloudPC/CloudPCs/Read"
            ]
        }
    ],
    "condition" : "null"
}

応答

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/cloudPc/roleDefinitions/$entity",
    "id": "b7f5ddc1-b7dc-4d37-abce-b9d6fc15ffff",
    "description": "An example custom role",
    "displayName": "ExampleCustomRole",
    "isBuiltIn": false,
    "isEnabled": true,
    "templateId": "b7f5ddc1-b7dc-4d37-abce-b9d6fc15ffff",
    "version": null,
    "rolePermissions": [
        {
            "allowedResourceActions": [
                "Microsoft.CloudPC/CloudPCs/Read"
            ],
            "condition": null
        }
    ],
    "resourceScopes":["/"]
}