KeyVault 架构——只有用户可以访问自己的数据

KeyVault architecture - only user can access their own data

我有一个很简单的要求: 我们广告中的每个用户都有几个 api 键,特定于他自己的用户。我想将它们安全地存储到密钥库中,但我要求只有密钥所属的用户才能访问 (CRUD) 这些密钥。所以基本上我希望每个用户都有一个桶,只有用户本身有权访问这个桶。 这可以通过密钥库实现吗?因为据我所知,我只能在密钥保管库级别分配密钥保管库权限,所以如果我授予用户访问权限,他可以读取和修改此密钥保管库中的所有其他密钥。所有用户都在 Azure AD 中可用。

据我所知,这是不可能的。对于 azure keyvault,我们可以在管理平面和数据平面中对其进行管理,see Secure access to a key vault。我们无法管理密钥库中特定密钥的访问策略。

because as far as i understand it i can only assign key vault permissions on key vault level, so if i give a user the permissions to access he can read and modify all other keys in this key vault.

你的理解是对的。解决方法是为不同的用户使用不同的密钥保管库。确保他们只在自己的密钥库 Access control (IAM) 中拥有角色,而不是在订阅的 IAM 中。然后他们就可以访问自己的keyvault了,最后别忘了将自己添加到keyvault中的Access policies