已启用 Azure Arc 的 Kubernetes 群集上的 Azure RBAC

Microsoft Entra ID Azure 基于角色的访问控制(Azure RBAC) 允许你在已启用 Azure Arc 的 Kubernetes 群集上控制授权检查。 将 Azure RBAC 与群集配合使用可提供 Azure 角色分配的优势,例如显示用户对 Azure 资源所做的更改的活动日志。

体系结构

显示 Azure BRAC 体系结构的示意图。

注释

若要以高分辨率下载 Arc 图表,请访问 Jumpstart Gems

为了将所有授权访问检查路由至 Azure 中的授权服务,在集群上部署了一个名为 guard 的 webhook 服务器。

群集的 apiserver 配置为使用 Webhook 令牌身份验证Webhook 授权,以便 TokenAccessReviewSubjectAccessReview 请求路由到 guard webhook 服务器。 TokenAccessReviewSubjectAccessReview 请求由发送到 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

后续步骤