如何解决Azure Kubernetes-多个托管身份?
我们计划在单个Azure kubernetes群集上部署多个应用程序,每个应用程序将具有自己的一组Azure资源-例如:密钥库,存储。
我计划为每个应用程序提供单独的托管身份,并提供对相关资源的访问。
我知道AZURE AAD POD标识是配置窗格以利用托管身份访问Azure资源的方法。
但是如何将多个托管身份添加到Azure kubernetes群集中?这是实施的权利吗?
解决方法
正如我之前提到的,我认为您不能向集群添加多个MSI,而只能使用系统分配的MSI或用户分配的MSI。
参考-Use managed identities in Azure Kubernetes Service
在这种情况下,如果要使用其他服务主体进行身份验证(本质上MSI也是由Azure管理的服务主体),则可以与服务主体一起创建多个AD Apps。
然后在每个应用程序的代码中,使用ClientSecretCredential
进行身份验证。
ClientSecretCredential credential1 = new ClientSecretCredentialBuilder()
.tenantId(tenantId)
.clientId(clientId)
.clientSecret(clientSecret)
.build();
然后使用凭据创建客户端,例如SecretClient。
SecretClient secretClient = new SecretClientBuilder()
.vaultUrl("<your-key-vault-url>")
.credential(credential1)
.buildClient();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。