【问题标题】:How to get Azure Key Vault secret using powershell with certificate auth?如何使用带有证书身份验证的 powershell 获取 Azure Key Vault 机密?
【发布时间】:2016-12-13 22:58:39
【问题描述】:

我在 Azure Worker Role 上包含一个 Powershell 启动任务,该任务需要从 Azure Key Vault 中提取机密。我想使用客户端证书来验证 Key Vault 请求(当角色出现时,证书会安装在 VM 上)。

我查看了有关 azure 文档的 this 教程,但这需要我编写一些 C# 方法并包含一堆 nuget 包。有没有更简单的方法?

【问题讨论】:

    标签: powershell azure azure-keyvault


    【解决方案1】:

    见这篇文章:Use Azure PowerShell to create a service principal to access resources

    Add-AzureRmAccount -ServicePrincipal -CertificateThumbprint $cert.Thumbprint -ApplicationId $appId -TenantId $tenantId
    

    【讨论】:

      【解决方案2】:

      可以使用 powershell 访问 Keyvault 中的密钥。 使用Get-AzureKeyVaultSecret 命令获取值。它有多个参数以满足不同的要求,例如获取所有秘密、特定秘密等。

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

      可以在此处找到所有 keyvault 模块命令行开关的详细信息。

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

      【讨论】:

      • 我找不到通过证书身份验证来使用这些 cmdlet 的方法,您能提供一个示例吗?
      • cert auth 访问 azure 帐户对吗??这是powershell中的正常步骤。我不确定在这种情况下有什么不同。
      • 当它在 PaaS VM 上作为启动任务运行时,将没有用户或上下文进行身份验证。我已经与 KeyVault 人员核实过,他们目前不支持它。
      • 哦,好吧。只是一个想法。如果您通过门户上传证书,一旦配置了角色,您可以在 powershell 启动任务中访问它吗?不确定路径是否可以预先确定。如果是这样,您可以使用该证书与 keyvault 对话。另外我在想你是否可以有一个函数应用程序来进行 keyvault 调用。但这又是一个很好的请求。 github.com/Azure/azure-webjobs-sdk/issues/746
      猜你喜欢
      • 1970-01-01
      • 2018-07-13
      • 2019-03-13
      • 2019-11-08
      • 2018-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多