已啟用 Azure Arc 的 Kubernetes 叢集的 Azure RBAC
Kubernetes ClusterRoleBinding 和 RoleBinding 物件類型有助於原生定義 Kubernetes 中的授權。 透過 Azure 角色型存取控制 (Azure RBAC),您可以使用 Azure 中的 Microsoft Entra ID 和角色指派來控制叢集上的授權檢查。 這可讓 Azure 角色指派的優點 (例如顯示對 Azure 資源的所有 Azure RBAC 變更的活動記錄) 能夠與已啟用 Azure Arc 的 Kubernetes 叢集一起使用。
架構
為了將所有授權存取檢查路由傳送至 Azure 中的授權服務,叢集上會部署 Webhook 伺服器 (防護)。
叢集的 apiserver
會設定為使用 Webhook 權杖驗證和 Webhook 授權,以便將 TokenAccessReview
和 SubjectAccessReview
要求路由傳送至防護 Webhook 伺服器。 TokenAccessReview
和 SubjectAccessReview
要求會由傳送至 apiserver
的 Kubernetes 資源要求所觸發。
接著,防護會對 Azure 中的授權服務發出 checkAccess
呼叫,以查看提出要求的 Microsoft Entra 實體是否有相關資源的存取權。
如果該實體具有允許此存取的角色,則會從授權服務中將 allowed
回應傳送給防護。 接著,防護會將 allowed
回應傳送給 apiserver
,讓發出呼叫的實體能夠存取所要求的 Kubernetes 資源。
如果該實體沒有允許此存取的角色,則會從授權服務中將 denied
回應傳送給防護。 防護會將 denied
回應傳送給 apiserver
,以針對所要求的資源向發出呼叫的實體提供 403 禁止錯誤。
下一步
- 使用我們的快速入門以將 Kubernetes 叢集連線至 Azure Arc。
- 在已啟用 Azure Arc 的 Kubernetes 叢集上設定 Azure RBAC。