Microsoft Entra ID 和 Azure 基于角色的访问控制(Azure RBAC) 允许你在已启用 Azure Arc 的 Kubernetes 群集上控制授权检查。 将 Azure RBAC 与群集配合使用可提供 Azure 角色分配的优势,例如显示用户对 Azure 资源所做的更改的活动日志。
体系结构
注释
若要以高分辨率下载 Arc 图表,请访问 Jumpstart Gems。
为了将所有授权访问检查路由至 Azure 中的授权服务,在集群上部署了一个名为 guard 的 webhook 服务器。
群集的 apiserver
配置为使用 Webhook 令牌身份验证和 Webhook 授权,以便 TokenAccessReview
和 SubjectAccessReview
请求路由到 guard webhook 服务器。
TokenAccessReview
和 SubjectAccessReview
请求由发送到 apiserver
的 Kubernetes 资源的请求触发。
之后,保护机制对 Azure 中的授权服务进行 checkAccess
调用,以查看请求 Microsoft Entra 实体是否有权访问相关资源。
如果该实体具有允许此访问的角色,授权服务会向 Guard 发送一个 allowed
响应。 守卫反过来将 allowed
响应发送到 apiserver
,使调用实体能够访问请求的 Kubernetes 资源。
如果该实体没有允许此访问的角色,授权服务会向 Guard 发送 denied
响应。 Guard 向 denied
发送 apiserver
响应,使调用实体在请求的资源上收到 403 禁止的错误。
在已启用 Arc 的 Kubernetes 群集上启用 Azure RBAC
有关如何设置 Azure RBAC 并为群集创建角色分配的详细信息,请参阅 在已启用 Azure Arc 的 Kubernetes 群集上使用 Azure RBAC。
后续步骤
- 使用我们的快速启动将 Kubernetes 群集连接到 Azure Arc。
- 在已启用 Azure Arc 的 Kubernetes 集群上设置 Azure RBAC。