鉴权模块
在 K8S 中,鉴权模块有 4 种,别离是:Node、ABAC、RBAC、Webhook。
性能别离如下:
- Node:验证节点的身份以确保其具备所需的权限来退出集群。
- ABAC:基于用户的属性(如用户名或组名)来管制其对集群资源的拜访权限。
- RBAC:基于角色的权限来管制用户对集群资源的拜访权限。
- Webhook:容许管理员将鉴权决策交给内部服务进行解决,以灵便地定制和扩大集群的鉴权策略。
更多详情可参考官网文档:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz…
- Node:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz…
- ABAC:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz…
- RBAC:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz…
- Webhook:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz…
利用场景
理解不同鉴权模块的利用场景是抉择正确鉴权模块的要害。当理解了不同鉴权模块的性能和利用场景后,就能够依据理论状况来抉择适合的鉴权模块。那么,在学习鉴权模块的时候,思路才会更加清晰,能力更有目的性的去学习某个鉴权模块。
RBAC
当在比拟大型的组织或者开发和运维团队中,通常须要更精密的访问控制和治理。在这种状况下,应用 RBAC 鉴权模块能够基于角色和权限来管制对 K8S 资源的拜访权限。例如,在一家大型的公司中,应用 RBAC 鉴权模块能够管制不同部门的开发、运维团队对不同环境中的 K8S 资源的拜访权限。
ABAC
在一些较小的组织或开发团队中,可能没有简单的角色受权需要,而只是须要基于用户属性(如用户名或组名)来管制对 Kubernetes 资源的拜访权限。在这种状况下,能够应用 ABAC 鉴权模块。例如,在一个小型的开发团队或者运维团队中,能够应用 ABAC 鉴权模块来管制不同用户对不同环境中的 Kubernetes 资源的拜访权限。
Node
当节点退出 Kubernetes 集群时,须要进行身份验证和受权。在理论生产环境中,应用 Node 鉴权模块能够确保只有具备所需权限的节点才可能退出集群。例如,在一家公司中,应用 Node 鉴权模块能够保障只有通过身份验证并具备所需权限的机器才可能连贯到 Kubernetes 集群。
Webhook
如果须要更加灵便的、可扩大的鉴权模块来解决非常规的访问控制需要。在这种状况下,能够应用 Webhook 鉴权模块。例如,在一个跨云平台的应用程序中,能够应用 Webhook 鉴权模块来将集中式的拜访控制策略与多个云平台的 Kubernetes 集群进行集成。
本文转载于 WX 公众号:不背锅运维(喜爱的盆友关注咱们):https://mp.weixin.qq.com/s/t1ma-g6BgaOzGSR_0x3wPA