【发布时间】:2017-06-17 13:19:03
【问题描述】:
在我的场景中,我正在尝试自动创建我的一个 AAD 应用程序,以便它使用此处为守护进程列出的说明调用另一个 WebAPI 服务(不同的 AAD 应用程序):
https://azure.microsoft.com/en-us/resources/samples/active-directory-dotnet-daemon/
我已经能够通过 PowerShell 自动创建 AAD 应用程序和所需的访问密钥。
以下是我如何创建添加了密钥的应用程序:
# Generate all the keys (secrets) for the AAD application.
$passwordCredentials = @()
foreach ($key in $activeDirectoryApplication.Keys.Key)
{
$keyKeyVaultName = $key.KeyVaultName
$keyName = $key.KeyVaultKeyName
$expiration = $key.Expiration
LogInfo "Generating key with key name '$keyName' into key vault '$keyKeyVaultName' with key expiry of '$expiration'."
$passwordCredential = GenerateActiveDirectoryApplicationKeyPasswordCredential $key
$passwordCredentials += $passwordCredential
PublishActiveDirectoryApplicationKeyToKeyVault $key $passwordCredential
}
$existingApplication = New-AzureRmADApplication -DisplayName $applicationName -HomePage $applicationHomePage -IdentifierUris @($applicationIdentifier) -PasswordCredentials $passwordCredentials
我不知道如何自动化上面链接中的第 8 步,它授予访问 WebAPI 应用程序的权限:
- 为您的应用程序配置权限 - 在“设置”菜单中,选择“所需权限”部分,单击“添加”,然后选择 API,然后在文本框中键入“TodoListService”。然后,点击选择权限并选择“访问 TodoListService”。
有谁知道 Azure PowerShell SDK 是否可以做到这一点,或者我需要以其他方式(可能是 AAD Graph API)吗?
谢谢!
【问题讨论】:
-
请求 AD 应用程序 API 权限包含在 stackoverflow.com/a/42166700/1548275
标签: azure asp.net-web-api permissions azure-active-directory daemon