【发布时间】:2018-09-28 09:17:32
【问题描述】:
当我们尝试使用 KeyVaultClient (c#) 从 keyvault 中检索机密时,即使同一用户可以从 Azure 门户 访问保管库机密,我们也会得到 403 access denied。如果我们在 key vault 上为用户提供显式访问权限,那么我们就能够检索到这些秘密。这看起来像一个问题,请帮助解决可能的解决方法。
【问题讨论】:
标签: azure-keyvault
当我们尝试使用 KeyVaultClient (c#) 从 keyvault 中检索机密时,即使同一用户可以从 Azure 门户 访问保管库机密,我们也会得到 403 access denied。如果我们在 key vault 上为用户提供显式访问权限,那么我们就能够检索到这些秘密。这看起来像一个问题,请帮助解决可能的解决方法。
【问题讨论】:
标签: azure-keyvault
您可能尚未为您的应用程序创建服务主体。如果是这样,首先创建它,然后使用服务主体的对象 ID 来授权应用程序的访问。如果您使用的是 VM,您还需要将 VM 服务主体添加到 Keyvault 的策略中。
看看这个sample code 以了解如何创建应用程序和服务主体以及give permission to the service principal。
【讨论】:
这是由于在生成令牌时未设置组声明,因此密钥保管库仅检查直接权限。一旦我们按照here 中的这些步骤启用了群组声明,那么它现在可以正常工作了..
【讨论】: