通过PowerShell向Azure RM AD应用程序添加权限

时间:2018-05-31 09:32:00

标签: powershell azure azure-active-directory azure-powershell

我可以像这样创建一个新的Azure RM AD应用程序:

New-AzureRmADApplication -DisplayName "xxx" -HomePage "xxx" -IdentifierUris "xxx" -ReplyUrl "xxx"

我正在尝试为此添加应用程序权限,以便使用我指定的权限创建应用程序。我想要的权限在清单中看起来像这样:

"requiredResourceAccess": [
{
  "resourceAppId": "00000002-0000-0000-c000-000000000000",
  "resourceAccess": [
    {
      "id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
      "type": "Scope"
    }
  ]
}
]

这是 Windows Azure Active Directory - 委派 - 登录和读取用户个人资料的权限。 在通过PowerShell创建我的AD应用程序之后,有什么方法可以添加它吗?

2 个答案:

答案 0 :(得分:2)

尝试以下命令,更改ObjectId,它可以正常使用。

$req = New-Object -TypeName "Microsoft.Open.AzureAD.Model.RequiredResourceAccess"
$req.ResourceAccess = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "311a71cc-e848-46a1-bdf8-97ff7156d8e6","Scope"
$req.ResourceAppId = "00000002-0000-0000-c000-000000000000"
Set-AzureADApplication -ObjectId <ObjectId> -RequiredResourceAccess $req

清单

的屏幕截图

enter image description here

答案 1 :(得分:0)

您还可以创建具有给定权限的AAD应用。然后,您需要New-AzureADApplication模块中的AzureAD。代码段如下:

$SiteUri = "https://example.com/"
$displayName = $SiteUri.Host
[string[]]$replyUrl = $SiteUri.AbsoluteUri + ".auth/login/aad/callback"

$reqAAD = New-Object -TypeName "Microsoft.Open.AzureAD.Model.RequiredResourceAccess"

# This is "Windows Azure Active Directory".
$reqAAD.ResourceAppId = "00000002-0000-0000-c000-000000000000"

# This is to "Sign you in and read your profile"
$permission = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "311a71cc-e848-46a1-bdf8-97ff7156d8e6","Scope"

$reqAAD.ResourceAccess = $permission

New-AzureADApplication -DisplayName $displayName -IdentifierUris $SiteUri -Homepage $SiteUri -ReplyUrls $replyUrl -RequiredResourceAccess $reqAAD

有关更多详细信息,您可以阅读https://blogs.msdn.microsoft.com/azuregov/2017/12/06/web-app-easy-auth-configuration-using-powershell/