この記事では、Microsoft Entra ID で新しいカスタム ロールを作成する方法について説明します。 カスタム ロールの基本については、カスタム ロールの概要を参照してください。 ロールを割り当てることができるのは、ディレクトリ レベルのスコープまたはアプリ登録リソースのスコープだけです。
カスタム ロールは、Microsoft Entra管理センターの [ロールと管理者] ページで作成できます。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
この記事では、Microsoft Entra ID で新しいカスタム ロールを作成する方法について説明します。 カスタム ロールの基本については、カスタム ロールの概要を参照してください。 ロールを割り当てることができるのは、ディレクトリ レベルのスコープまたはアプリ登録リソースのスコープだけです。
カスタム ロールは、Microsoft Entra管理センターの [ロールと管理者] ページで作成できます。
詳細については、PowerShell または Graph エクスプローラーを使用するための前提条件に関するページを参照してください。
ヒント
この記事の手順は、開始するポータルに応じて若干異なる場合があります。
Microsoft Entra 管理センターに特権ロール管理者以上としてサインインします。
[ID] >[役割と管理者]>[役割と管理者] の順に移動します。
[新しいカスタム ロール] を選択します。
[基本] タブに、ロールの名前と説明を指定します。
カスタム ロールからベースラインのアクセス許可を複製できますが、組み込みのロールを複製することはできません。
[アクセス許可] タブで、アプリ登録の基本的なプロパティと資格情報のプロパティを管理するために必要な権限を選択します。 各アクセス許可について詳しくは、Microsoft Entra ID でのアプリケーションの登録のサブタイプとアクセス許可に関するページを参照してください。
最初に、検索バーに「credentials」と入力し、microsoft.directory/applications/credentials/update
アクセス許可を選択します。
次に、検索バーに「basic」と入力し、microsoft.directory/applications/basic/update
アクセス許可を選択し、 [次へ] をクリックします。
[確認と作成] タブでアクセス許可を確認し、 [作成] を選択します。
カスタム ロールが、割り当て可能なロールの一覧に表示されます。
Connect-MgGraph コマンドを使って、テナントにサインインします。
Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"
Create a new role using the following PowerShell script:
# Basic role information
$displayName = "Application Support Administrator"
$description = "Can manage basic aspects of application registrations."
$templateId = (New-Guid).Guid
# Set of permissions to grant
$allowedResourceAction =
@(
"microsoft.directory/applications/basic/update",
"microsoft.directory/applications/credentials/update"
)
$rolePermissions = @(@{AllowedResourceActions= $allowedResourceAction})
# Create new custom admin role
$customAdmin = New-MgRoleManagementDirectoryRoleDefinition -RolePermissions $rolePermissions -DisplayName $displayName -IsEnabled -Description $description -TemplateId $templateId
Assign the role using the below PowerShell script:
# Get the user and role definition you want to link
$user = Get-MgUser -Filter "userPrincipalName eq 'user@contoso.com'"
$roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Application Support Administrator'"
# Get app registration and construct resource scope for assignment.
$appRegistration = Get-MgApplication -Filter "Displayname eq 'MyApp1'"
$resourceScope = '/' + $appRegistration.objectId
# Create a scoped role assignment
$roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId $resourcescope -RoleDefinitionId $roledefinition.Id -PrincipalId $user.Id
次のステップを実行します。
Create unifiedRoleDefinition API を使用して、カスタム ロールを作成します。
POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleDefinitions
Body
{
"description": "Can manage basic aspects of application registrations.",
"displayName": "Application Support Administrator",
"isEnabled": true,
"templateId": "<GUID>",
"rolePermissions": [
{
"allowedResourceActions": [
"microsoft.directory/applications/basic/update",
"microsoft.directory/applications/credentials/update"
]
}
]
}
注意
"templateId": "GUID"
は、要件に応じて本文で送信される省略可能なパラメーターです。 共通パラメーターを使用して複数の異なるカスタム ロールを作成する必要がある場合、テンプレートを作成し、templateId
値を定義することをお勧めします。 PowerShell コマンドレット (New-Guid).Guid
を使用し、templateId
値を事前に生成できます。
Create unifiedRoleAssignment API を使用して、カスタム ロールを割り当てます。
POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
本文
{
"principalId":"<GUID OF USER>",
"roleDefinitionId":"<GUID OF ROLE DEFINITION>",
"directoryScopeId":"/<GUID OF APPLICATION REGISTRATION>"
}
組み込みロールと同様に、既定では、組織内のすべてのアプリ登録にアクセス許可を付与するために、カスタム ロールは既定の組織全体のスコープで割り当てられます。 さらに、カスタム ロールおよびいくつかの関連する組み込みロール (Microsoft Entra リソースの種類によって異なります) は、単一の Microsoft Entra リソースのスコープで割り当てることもできます。 これにより、2 つ目のカスタム ロールを作成せずに、1 つのアプリの資格情報と基本プロパティを更新できるアクセス許可をユーザーに付与できます。
アプリケーション開発者以上として Microsoft Entra 管理センターにサインインします。
[ID]>[アプリケーション]>[アプリの登録] を参照します。
付与しようとするアクセス権によって管理されるアプリ登録を選択します。 Microsoft Entra 組織内のアプリ登録の完全な一覧を表示するには、[すべてのアプリケーション] を選ぶ必要がある場合があります。
[アプリの登録] で、 [ロールと管理者] を選択します。 まだ 1 つも作成していない場合は、前の手順の指示を参照してください。
ロールを選択して、 [割り当て] ページを開きます。
[割り当ての追加] を選択してユーザーを追加します。 このユーザーには、選択したアプリ登録に対してのみアクセス許可が付与されます。