Командлет Set-AzureRmKeyVaultAccessPolicy, назначающий политику как пользователь, а не приложение - PullRequest
0 голосов
/ 06 июня 2018

Мы видим проблему при попытке добавить политику доступа в KeyVault для предоставления разрешений на секреты субъекта службы автоматизации.Мы используем следующий командлет:

Set-AzureRmKeyVaultAccessPolicy -VaultName "KeyVaultName" -ApplicationId "0aaa8314-872d-41ef-a75e-d3a5ec5b31e6" -ObjectId "443d03a7-6b76-47d1-9406-8fb87c17bbc3" -PermissionsToSecrets recover,delete,backup,set,restore,list,get

при выполнении командлета мы видим что-то подобное на портале.Обратите внимание на значок, который выглядит как пользователь.

enter image description here

Несмотря на то, что это видно в политиках доступа, модули Runbook учетной записи автоматизации по-прежнему завершаются с ошибкой «Запрещено »при попытке получить доступ к keyvault:

Get-AzureKeyVaultSecret : Operation returned an invalid status code 'Forbidden'
At C:\Modules\User\CustomModule.psm1:28 char:22
+ ... clientID = (Get-AzureKeyVaultSecret -VaultName $global:ManagementKeyV ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Get-AzureKeyVaultSecret], KeyVaultErrorException
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.KeyVault.GetAzureKeyVaultSecret

Пробовал несколькими способами обеспечить доступ к keyvault для субъекта службы учетных записей автоматизации, используя указанные ниже командлеты, но при этом получая тот же результат.

Set-AzureRmKeyVaultAccessPolicy -VaultName "KeyVaultName" -ObjectId "443d03a7-6b76-47d1-9406-8fb87c17bbc3" -PermissionsToSecrets recover,delete,backup,set,restore,list,get -BypassObjectIdValidation 

Set-AzureRmKeyVaultAccessPolicy -VaultName "KeyVaultName" -ServicePrincipalName ((Get-AzureRmADServicePrincipal -ApplicationId "0aaa8314-872d-41ef-a75e-d3a5ec5b31e6").ServicePrincipalNames[0]) -PermissionsToSecrets recover,delete,backup,set,restore,list,get 

Однако после ручного добавления того же субъекта службы с портала мы видим другой значок для того же субъекта службы.

enter image description here

Может кто-топожалуйста, помогите с этим?Я что-то не так делаю?

Большое спасибо!

1 Ответ

0 голосов
/ 11 июня 2018

Попробуйте это:

Set-AzureRmKeyVaultAccessPolicy [-VaultName] -ServicePrincipalName "0aaa8314-872d-41ef-a75e-d3a5ec5b31e6" -PermissionsToSecrets восстановить, удалить, создать резервную копию, получить 100 восстановить, установить, восстановить, установить, восстановить, установить, восстановить, список, установить, восстановить

Где SPN - это идентификатор приложения.

Я знаю, что это сбивает с толку.

...