Как получить секрет хранилища ключей Azure с помощью PowerShell с аутентификацией сертификата?

Я включаю задачу запуска Powershell в рабочую роль Azure, которая должна извлечь секрет из Azure Key Vault. Я хотел бы использовать сертификат клиента для аутентификации запроса Key Vault (сертификат устанавливается на виртуальную машину, когда появляется роль).

Я взглянул на это учебник по документации azure, но для этого мне нужно написать несколько методов C # и включить кучу пакетов nuget. Есть способ попроще?


person Amit    schedule 08.08.2016    source источник


Ответы (2)


См. Эту статью: Используйте Azure PowerShell для создания субъекта-службы для доступа к ресурсам

Add-AzureRmAccount -ServicePrincipal -CertificateThumbprint $cert.Thumbprint -ApplicationId $appId -TenantId $tenantId
person Der_Meister    schedule 27.09.2016

Для доступа к ключам в Keyvault можно использовать powershell. используйте команду Get-AzureKeyVaultSecret для получения значений. Он имеет несколько параметров для удовлетворения различных требований, таких как получение всех секретов, определенных секретов и т. Д.

https://msdn.microsoft.com/en-us/library/dn868047.aspx

Подробную информацию обо всех командлетах модуля keyvault можно найти здесь.

https://msdn.microsoft.com/library/azure/dn868052.aspx

person Aravind    schedule 08.08.2016
comment
Мне не удалось найти способ использовать эти командлеты с использованием сертификата аутентификации, вы можете привести пример? - person Amit; 08.08.2016
comment
сертификат авторизации для доступа к учетной записи Azure правильно ?? это обычные шаги в PowerShell. я не уверен, чем это отличается в этом случае. - person Aravind; 09.08.2016
comment
когда он запускается как задача запуска на виртуальной машине PaaS, у него не будет пользователя или контекста для аутентификации. Я проверил с людьми KeyVault, они не поддерживают его на данный момент. - person Amit; 26.10.2016
comment
Ох, ладно. Просто подумайте. Если вы загрузите сертификат через портал, сможете ли вы получить к нему доступ в задаче запуска PowerShell после предоставления роли? я не уверен, можно ли заранее определить путь. в таком случае вы можете использовать этот сертификат для связи с keyvault. Также я подумал, можно ли иметь приложение-функцию для вызова keyvault. но это снова приятно получить запрос в данный момент. github.com/Azure/azure-webjobs-sdk/issues/746 - person Aravind; 26.10.2016