Как написать секретное хранилище ключей Azure из конвейера Azure DevOps? - PullRequest
0 голосов
/ 21 октября 2018

Я создал хранилище ключей в DevOps Azure с использованием ARM, и теперь я хочу записать в него секрет в том же конвейере.

Я создал задачу Azure PowerShell со следующей встроенной PowerShell:

$secretvalue = ConvertTo-SecureString $(Secret) -AsPlainText -Force
Set-AzureKeyVaultSecret -VaultName $(VaultName) -Name $(SecretName) -SecretValue (ConvertTo-SecureString $(Secret) -AsPlainText -Force)

Хранилище ключей создано нормально, но при попытке записать секрет я получаю следующую ошибку:

[error]Access denied

Если я запускаю Set-AzureKeyVaultSecret на своем локальном компьютеремашина работает нормально.

РЕДАКТИРОВАТЬ

Вот несколько скриншотов того, что я сделал.В Azure DevOps я создал служебное соединение и проверил его:

enter image description here

Вот как выглядит моя задача Azure PowerShell для записи секрета в хранилище:

enter image description here

enter image description here

enter image description here

Разрешения хранилища ключей:

enter image description here

enter image description here

Нужен ли отдельный сервисный руководитель или янужно создать приложение Регистрация?

Ответы [ 2 ]

0 голосов
/ 21 октября 2018

Уверен, что вы дали права не на тот объект.Чтобы найти нужную сущность, сделайте это.

Нажмите ссылку Manage в поле Azure Subscription, и вы перейдете к новому лезвию.Нажмите Manage Service Principal там.Вы попадете на страницу приложения в Azure AD.После этого вы можете скопировать имя в поле Managed application in local directory и использовать это имя для предоставления ему разрешения хранилища ключей.

0 голосов
/ 21 октября 2018

Проверьте свои разрешения для подключения службы к ARM и разрешения в вашем хранилище.Шаги для проверки здесь: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-key-vault?view=vsts

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...