【发布时间】:2021-01-16 09:51:01
【问题描述】:
我指的是tutorial,它从 azure 密钥库中为所有用户的应用程序获取机密(因为为应用程序级别提供了访问策略)。有没有办法从密钥库中为在访问策略中具有权限(即用户服务主体级别)的特定用户获取机密,如下面的屏幕截图中所述
有没有办法为特定用户检索密钥,而不是为所有用户检索密钥?
提前致谢。
【问题讨论】:
标签: node.js reactjs azure-active-directory azure-keyvault
我指的是tutorial,它从 azure 密钥库中为所有用户的应用程序获取机密(因为为应用程序级别提供了访问策略)。有没有办法从密钥库中为在访问策略中具有权限(即用户服务主体级别)的特定用户获取机密,如下面的屏幕截图中所述
有没有办法为特定用户检索密钥,而不是为所有用户检索密钥?
提前致谢。
【问题讨论】:
标签: node.js reactjs azure-active-directory azure-keyvault
我做了一些测试,但我不确定这是否是最好的解决方案。
首先,我创建了一个用于使用 api 访问密钥保管库的 azure 广告应用程序。所以我向这个应用程序添加了 key-vault-user_impersonation api 权限。然后在密钥保管库访问策略选项卡中,我添加了应用程序和我的用户帐户。
然后使用 azure ad ropc 流程,我获得了用于调用 key vault api 的访问令牌。最后,我可以用它获得秘密价值。
当我使用另一个未在访问策略中添加的帐户来获取访问令牌时,我无法得到正确的响应。在收到禁止消息后,我还尝试将此帐户添加到密钥库访问策略,它终于奏效了。因此,在我的场景中,只需在访问策略中添加 azure 广告应用和特定用户即可。
顺便说一句,如果您认为在密钥保管库访问策略中添加多个用户帐户不方便,您可以添加一个包含所有需要访问密钥保管库的用户的组。只需在 azure ad 中创建一个组(即命名为“permission2xxxkeyvault”)并在访问策略选项卡中进行设置。我试过了,效果也很好。
【讨论】: