gpt4 book ai didi

azure-aks - Azure RBAC 和 AKS 未按预期工作

转载 作者:行者123 更新时间:2023-12-05 02:38:23 29 4
gpt4 key购买 nike

我创建了一个 AKS 集群,并启用了 AKS 管理的 Azure Active Directory 和基于角色的访问控制 (RBAC)。如果我尝试使用 Admin Azure AD 组中包含的其中一个帐户连接到集群,一切正常。当我尝试对不是管理员 Azure AD 组成员的用户执行此操作时,我遇到了一些困难。我所做的是:

  • 创建了一个新用户
  • 为该用户分配了 Azure Kubernetes 服务集群用户角色和 Azure Kubernetes 服务 RBAC 读者角色。
  • 执行以下命令:az aks get-credentials --resource-group RG1 --name aksttest

然后当我执行以下命令时:kubectl get pods -n test 我收到以下错误:服务器错误(禁止):pods 被禁止:用户“akstree@tenantname.onmicrosoft.com”无法列出资源“pods”在命名空间“test”中的 API 组“”中

在集群中我没有做任何角色绑定(bind)。根据docu from Microsoft , 没有应该在集群中完成的额外任务(例如角色定义和角色绑定(bind))。

我的期望是,当用户分配了上述两个角色时,他应该能够在集群中拥有读取权限。我做错了什么吗?

请告诉我你的想法,提前致谢,迈克

最佳答案

当您使用 AKS-managed Azure Active Directory 时,它启用 AD 用户身份验证,但授权发生在 Kubernetes RBAC只是,所以,你必须separately配置 Azure IAMKubernetes RBAC。例如,它添加了 aks-cluster-admin-binding-aad ClusterRoleBinding,它提供对 Admin Azure AD 组中包含的帐户的访问权限。

Azure Kubernetes Service RBAC Reader 角色适用于 Azure RBAC for Kubernetes Authorization这是 feature在 AKS 管理的 Azure Active Directory 之上,其中身份验证和授权通过 AD 和 Azure RBAC 进行。它使用 Webhook Token Authentication API 服务器上验证 token 的技术。

您可以在已经集成 AAD 的现有集群上为 Kubernetes 授权启用 Azure RBAC:

az aks update -g <myResourceGroup> -n <myAKSCluster> --enable-azure-rbac

关于azure-aks - Azure RBAC 和 AKS 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69631070/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com