0

Azure Key Vault 似乎不支持分配给组的访问策略;只有分配给用户或服务主体的。它还支持每个密钥保管库最多 10 个访问策略,这意味着我无法单独分配我想要访问的所有人员。

我不想将客户机密传递给所有开发人员。对于已部署的应用程序,传递单个客户端密钥以便代码可以作为服务主体进行身份验证,然后获取密钥就可以了。

开发人员通过 NTLM/Kerberos(通过 ADFS)向 AAD 进行身份验证以获取访问令牌(而不是通过客户端密钥)。通过获取此访问令牌,他们应该能够访问运行我们的应用程序所需的所有其他机密的安全存储形式(就像作为服务主体进行身份验证时生产代码所做的那样)。

我怎样才能做到这一点?

4

1 回答 1

3

编辑:现在可以将组关联到 Key Vault 访问策略。只需在您通常放置用户对象 ID 或服务主体对象 ID 的位置指定组的对象 ID。

这是一个有点痛苦的解决方法,但是......

您可以编写一个相当简单的应用程序,在 Key Vault 之上添加一个层。此应用程序(可以是 Web 应用程序、API 或两者)将设置为使用 Azure AD 进行身份验证,并将检查调用者的组成员身份以确定他们是否应该有权访问给定的机密。如果是,该应用程序将从 Key Vault 检索机密并将其传递给请求者。(应用程序的服务主体将是 Key Vault 上授权的服务主体。)

于 2016-02-25T03:38:35.127 回答