新しいAzure AD v2コマンドレット(https://docs.microsoft.com/en-us/powershell/azuread/v2/azureactivedirectory)を使用することをお勧めします。
これらはARMよりも汎用性があり、キー、返信URLなどを簡単に指定することができます。
たとえば、返信のURLを追加する:
Set-AzureADApplication -ObjectId 1048db5f-f5ff-419b-8103-1ce26f15db31 -ReplyUrls @("https://localhost:8080","https://localhost:8081")
が必要な権限を追加するには、カップルの事を知る必要があります。アクセス許可が定義されているサービスプリンシパルは、そのappIdが必要です。 (テナントからMicrosoft Graph APIプリンシパルが見つかりました)次に、appRoleまたはoauth2Permissionが必要です。そのIDが必要です。そして、委任権限追加する
:
$req = New-Object -TypeName "Microsoft.Open.AzureAD.Model.RequiredResourceAccess"
$acc1 = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "e1fe6dd8-ba31-4d61-89e7-88639da4683d","Scope"
$acc2 = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "798ee544-9d2d-430c-a058-570e29e34338","Role"
$req.ResourceAccess = $acc1,$acc2
$req.ResourceAppId = "00000003-0000-0000-c000-000000000000"
Set-AzureADApplication -ObjectId 1048db5f-f5ff-419b-8103-1ce26f15db31 -RequiredResourceAccess $req
ResourceAppIdは、MicrosoftグラフAPIのためのサービスプリンシパルのAPPIDです。この場合のResourceAccessオブジェクトには2つの要件があります。最初に、oauth2PermissionのIDを保持し、それが委任された許可であることを指定します。 2つ目はapp権限を持ち、idはappRoleのオブジェクトIDです。
Get-AzureADServicePrincipal
ObjectId AppId DisplayName
-------- ----- -----------
f004dde9-b40f-4259-91be-e257009a444a 00000003-0000-0000-c000-000000000000 Microsoft Graph
そして、元本を取得し、委任権限をリストアップ:あなたが必要とするサービスプリンシパルを見つけるための許可
役割=アプリケーションの許可
を委任、あなたが実行することができます
範囲=
$msGraph = Get-AzureADServicePrincipal -ObjectId f004dde9-b40f-4259-91be-e257009a444a
$msGraph.Oauth2Permissions | select Id,AdminConsentDisplayName,Value
Id AdminConsentDisplayName Value
-- ----------------------- -----
e1fe6dd8-ba31-4d61-89e7-88639da4683d Sign in and read user profile User.Read
アプリのパーミッションが必要な場合:
$msGraph.AppRoles | select Id,DisplayName,Value
Id DisplayName Value
-- ----------- -----
798ee544-9d2d-430c-a058-570e29e34338 Read calendars in all mailboxes Calendars.Read
Idは重要です。
スクリプトの場合、MSサービスのアプリケーションIDは常に同じです。許可IDはすべてのテナントで同じです。ですから、例えば:
- MicrosoftグラフAPI
- のAppID:00000003-0000-0000-c000-000000000000
- のAzure ADグラフAPI
- APPID:00000002-0000- 0000-c000-000000000000
返信ありがとうございます。あなたは、あなたが言った行についての追加情報を提供してください:* "次に、あなたが必要とするappRoleまたはoauth2Permissionsを見つける必要があります" *? – jdave
私の編集を参照してください。 Microsoft Graph APIのアクセス許可を取得するために使用したコマンドの例をいくつか追加しました。 – juunas
@ junnas - ああありがとう!新しいアプリを設定していて、アクセス許可が定義されているサービス原則がない場合はどうなりますか?アプリの新しい権限を作成したければ、別の流れがありますか? – jdave