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