Настройка политики доступа keyvault для секрета Azure

Я пишу дружественный для Linux код для сохранения сертификата службы приложений в виде файла pfx, как описано в этой ссылке. Это демонстрирует, как это сделать в PowerShell, и я работаю над версией, использующей Cliure Azure, которая может работать под Linux. Одним из шагов, включенных в пример, является операция по извлечению секрета из keyvault. Однако команда Azure cli, которую я использую для выполнения этой же задачи, завершается неудачно:

$ az keyvault secret show --name  MY-SECRET-NAME --vault-name MY-VAULT-NAME
Access denied

Эта проблема специально решена в примере PowerShell. Он выполняет команду, чтобы установить политику доступа к keyvault, чтобы позволить коду получить секрет из хранилища. Команда, включенная в пример для установки политики доступа:

Set-AzureRmKeyVaultAccessPolicy -ResourceGroupName $keyVaultResourceGroupName -VaultName $keyVaultName -UserPrincipalName $loginId -PermissionsToSecrets get

Я считаю, что команда cli, которую мне нужно использовать для выполнения той же задачи,

az keyvault set-policy --name KEY-VAULT -g RESOURCE-GROUP -object-id OID --upn UPN --secret-permissions get

Конечно, я знаю свое имя и ресурсную группу. Мне неясно, что следует использовать для идентификатора объекта и имени пользователя. Я попытался использовать идентификатор объекта, связанный с субъектом службы. Я использую аутентификацию моего сеанса, но команда, кажется, принимает что-либо для UPN. Конечно, я указал свой логин, но это не работает. Я все еще получаю "Доступ запрещен" при попытке доступа по секрету.

Это правильная команда для того же действия, что и в примере с PowerShell? Если это так, что я делаю не так?

0 ответов

Другие вопросы по тегам