この記事では、Microsoft Entra 管理センター、Microsoft Graph PowerShell、または Microsoft Graph API を使用して、Microsoft Entra ID で割り当てたロールを一覧表示する方法について説明します。
ロールの割り当てには、特定のセキュリティ プリンシパル (ユーザー、グループ、またはアプリケーション サービス プリンシパル) をロール定義にリンクする情報が含まれます。 ユーザー、グループ、割り当て済みロールは既定のユーザー アクセス許可で一覧表示できます。
自分のロールの割り当てを一覧表示する
自分のアクセス許可も簡単に一覧表示することができます。 [ロールと管理者] ページで、[自分のロール] を選択して、現在自分に割り当てられているロールを確認します。
ユーザーのロールの割り当ての一覧表示
Microsoft Entra 管理センターを使用してユーザーの Microsoft Entra ロールを一覧表示するには、次の手順に従います。 Microsoft Entra Privileged Identity Management (PIM) が有効になっているかどうかによって、エクスペリエンスは異なります。
Microsoft Entra 管理センターにサインインします。
[ID]、[ユーザー]、[すべてのユーザー] の順に移動します。
ユーザー名 を選択し、割り当てられたロール>を確認します。
ユーザーに割り当てられたロールの一覧は、さまざまなスコープで表示できます。 さらに、ロールが直接割り当てられているか、グループ経由で割り当てられているかを確認できます。
Microsoft Entra ID P2 ライセンスをお持ちの場合、有効、アクティブ、期限切れのロールの割り当ての詳細が含まれる、PIM エクスペリエンスが表示されます。
グループのロールの割り当ての一覧表示
Microsoft Entra 管理センターにサインインします。
[ID]、[グループ]、[すべてのグループ] の順に移動します。
ロール割り当て可能なグループを選択します。
グループがロール割り当て可能かどうかを判断するには、グループのプロパティを表示できます。
[割り当てられたロール] を選択します。
これで、このグループに割り当てられているすべての Microsoft Entra ロールが表示されます。 [割り当てられたロール] オプションが表示されない場合、そのグループはロール割り当て可能なグループではありません。
ロールの割り当てのダウンロード
組み込みロールやカスタム ロールを含むすべてのロールでアクティブなロールの割り当てをダウンロードするには、次の手順に従います。
一括操作は最大 1 時間しか実行できません。また、大規模なテナントでは制限があります。 詳細については、「一括操作」と「Microsoft Entra IDでのユーザー一括作成 」を参照してください。
[ロールと管理者] ページで、[すべてのロール] を選択します。
[Download assignments] (割り当てのダウンロード) を選択します。
ファイル名を指定し、[ダウンロード開始] を選択します。
すべてのロールのすべてのスコープでの割り当ての一覧を含む CSV ファイルがダウンロードされます。
特定のロールの割り当てをダウンロードするには、次の手順に従います。
[ロールと管理者] ページでロールを選択します。
[Download assignments] (割り当てのダウンロード) を選択します。
Microsoft Entra ID P2 ライセンスをお持ちの場合、PIM エクスペリエンスが表示されます。 エクスポート を選択して役割の割り当てをダウンロードします。
そのロールのすべてのスコープでの割り当てを一覧表示する CSV ファイルがダウンロードされます。
テナント スコープでロールの割り当てを一覧表示する
この手順では、テナント スコープでロールの割り当てを一覧表示する方法について説明します。
Microsoft Entra 管理センターにサインインします。
[ID]>[役割と管理者]>[役割と管理者] の順に移動します。
ロール名を選択してロールを開きます。 ロールの横にチェック マークを付けないでください。
ロールの割り当てを一覧表示するには、 [割り当て] を選択します。
[スコープ] 列で、ディレクトリ スコープに関するロールの割り当てを確認します。
アプリ登録のスコープでロールの割り当てを一覧表示する
このセクションでは、単一アプリケーションのスコープでロールの割り当てを一覧表示する方法について説明します。
Microsoft Entra 管理センターにサインインします。
[ID]>[アプリケーション]>[アプリの登録] を参照します。
表示するロールの割り当ての一覧に対してアプリの登録を選択します。
Microsoft Entra 組織内のアプリ登録の完全な一覧を表示するには、[すべてのアプリケーション] を選ぶ必要がある場合があります。
[ロールと管理者] を選択します。
ロール名を選択してロールを開きます。
ロールの割り当てを一覧表示するには、 [割り当て] を選択します。
アプリの登録内から [割り当て] ページを開くと、この Microsoft Entra リソースをスコープとしたロールの割り当てが表示されます。
[スコープ] 列で、[このリソース] スコープを使ってロールの割り当てを確認します。
管理単位スコープでロールの割り当てを一覧表示する
管理単位スコープで作成されたすべてのロールの割り当ては、Microsoft Entra 管理センターの管理ユニット セクションで確認できます。
Microsoft Entra 管理センターにサインインします。
[ID]>[役割と管理者]>[管理単位]。
表示するロールの割り当ての一覧で管理単位を選択します。
[ロールと管理者] を選択します。
ロール名を選択してロールを開きます。
ロールの割り当てを一覧表示するには、 [割り当て] を選択します。
[スコープ] 列で、[このリソース] スコープを使ってロールの割り当てを確認します。
このセクションでは、テナント スコープでロールの割り当てを表示する方法について説明します。 このセクションでは、Microsoft Graph PowerShell モジュールを使用します。
セットアップ
Install-Module を使用して Microsoft Graph モジュールをインストールします。
Install-Module -name Microsoft.Graph
Connect-MgGraph コマンドを使用し、Microsoft Graph PowerShell コマンドレットにサインインして使用します。
Connect-MgGraph
テナント スコープでロールの割り当てを一覧表示する
Get-MgRoleManagementDirectoryRoleDefinition および Get-MgRoleManagementDirectoryRoleAssignment コマンドを使用して、ロールの割り当てをリストします。
次の例は、グループ管理者ロールに対するロールの割り当てを一覧表示する方法を示しています。
# Get a specific directory role by ID
$role = Get-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId fdd7a751-b60b-444a-984c-02652fe8fa1c
# Get role assignments for a given role definition
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
次の例では、組み込みロールやカスタム ロールを含むすべてのロールでアクティブなすべてのロールの割り当てを一覧表示する方法を示します。
$roles = Get-MgRoleManagementDirectoryRoleDefinition
foreach ($role in $roles)
{
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
}
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
4-PYiFWPHkqVOpuYmLiHa3ibEcXLJYtFq5x3Kkj2TkA-1 cccccccc-dddd-eeee-3333-444444444444 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
4-PYiFWPHkqVOpuYmLiHa2hXf3b8iY5KsVFjHNXFN4c-1 dddddddd-eeee-ffff-4444-555555555555 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
BSub0kaAukSHWB4mGC_PModww03rMgNOkpK77ePhDnI-1 eeeeeeee-ffff-aaaa-5555-666666666666 d29b2b05-8046-44ba-8758-1e26182fcf32 /
BSub0kaAukSHWB4mGC_PMgzOWSgXj8FHusA4iaaTyaI-1 ffffffff-aaaa-bbbb-6666-777777777777 d29b2b05-8046-44ba-8758-1e26182fcf32 /
プリンシパルのロールの割り当てを一覧表示する
Get-MgRoleManagementDirectoryRoleAssignment コマンドを使用し、プリンシパルのロールの割り当てを一覧表示します。
# Get role assignments for a given principal
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
プリンシパルの直接ロールと推移的なロールの割り当てを一覧表示する
List transitiveRoleAssignments API を使用して、ユーザーに直接および推移的に割り当てられているロールを取得します。
$response = $null
$uri = "https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?`$count=true&`$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
$method = 'GET'
$headers = @{'ConsistencyLevel' = 'eventual'}
$response = (Invoke-MgGraphRequest -Uri $uri -Headers $headers -Method $method -Body $null).value
グループのロールの割り当ての一覧表示
グループを取得するには、Get-MgGroup コマンドを使用します。
Get-MgGroup -Filter "DisplayName eq 'Contoso_Helpdesk_Administrators'"
Get-MgRoleManagementDirectoryRoleAssignment コマンドを使用し、グループのロールの割り当てを一覧表示します。
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq '<object id of group>'"
管理単位スコープでロールの割り当てを一覧表示する
Get-MgDirectoryAdministrativeUnitScopedRoleMember コマンドを使用し、管理単位スコープでロールの割り当てを一覧表示します。
$adminUnit = Get-MgDirectoryAdministrativeUnit -Filter "displayname eq 'Example_admin_unit_name'"
Get-MgDirectoryAdministrativeUnitScopedRoleMember -AdministrativeUnitId $adminUnit.Id | FL *
このセクションでは、テナント スコープでロールの割り当てを一覧表示する方法について説明します。 List unifiedRoleAssignments API を使用してロールの割り当てを取得します。
プリンシパルのロールの割り当てを一覧表示する
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId+eq+'<object-id-of-principal>'
Response
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
"directoryScopeId": "/"
}
]
}
プリンシパルの直接ロールと推移的なロールの割り当てを一覧表示する
次の手順に従って、Graph Explorerで Microsoft Graph API を使用してユーザーに割り当てられている Microsoft Entra ロールを一覧表示します。
Graph エクスプローラーにサインインします。
List transitiveRoleAssignments API を使用して、ユーザーに直接および推移的に割り当てられているロールを取得します。 URL への次のクエリを追加します。
GET https://graph.microsoft.com/beta/rolemanagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'
要求ヘッダー タブに移動します。ConsistencyLevel
をキーとして追加し、Eventual
をその値として設定します。
[を選択してクエリを実行] します。
グループのロールの割り当ての一覧表示
Get group API を使用してグループを取得します。
GET https://graph.microsoft.com/v1.0/groups?$filter=displayName+eq+'Contoso_Helpdesk_Administrator'
List unifiedRoleAssignments API を使用して、ロールの割り当てを取得します。
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId eq
ロール定義のロールの割り当てを一覧表示する
次の例は、特定のロール定義のロールの割り当てを一覧表示する方法を示しています。
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=roleDefinitionId eq '<template-id-of-role-definition>'
Response
HTTP/1.1 200 OK
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/"
}
ID でロールの割り当てを一覧表示する
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments/lAPpYvVpN0KRkAEhdxReEJC2sEqbR_9Hr48lds9SGHI-1
Response
HTTP/1.1 200 OK
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
}
アプリ登録のスコープでロールの割り当てを一覧表示する
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=directoryScopeId+eq+'/d23998b1-8853-4c87-b95f-be97d6c6b610'
Response
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
}
]
}
管理単位スコープでロールの割り当てを一覧表示する
List scopedRoleMembers API を使用し、管理単位スコープのあるロールの割り当てを一覧表示します。
要求
GET /directory/administrativeUnits/{admin-unit-id}/scopedRoleMembers
本文
{}