开发者的 Kubernetes 与微服务入门
1. 微服务的认证与授权
认证和授权与安全密切相关,它们通过限制对受信任用户和 Kubernetes 特定方面的访问来保障系统安全。组织有多种方式对用户进行认证,Kubernetes 支持多种常见的认证方案,如 X.509 证书、HTTP 基本认证(安全性较低),还支持通过 Webhook 连接外部认证服务器,让你对认证过程拥有最终控制权。认证过程只是将请求的凭证与身份(原始用户或模拟用户)进行匹配,而用户被允许执行的操作则由授权过程控制,这里就涉及到基于角色的访问控制(RBAC)。
1.1 基于角色的访问控制(RBAC)
虽然 RBAC 不是必需的,你可以使用 Kubernetes 中的其他机制进行授权,但它是一种最佳实践。RBAC 基于两个概念:角色(Role)和绑定(Binding)。角色是一组定义为规则的资源权限,有两种类型的角色:
- Role :应用于单个命名空间。
- ClusterRole :应用于集群中的所有命名空间。
以下是一个在默认命名空间中允许获取、监视和列出所有 Pod 的角色示例:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: default
name: pod-reader
rules:
- apiGroups: [""] # "" 表示核心 API 组
resources: ["pods"]
v
超级会员免费看
订阅专栏 解锁全文
2万+

被折叠的 条评论
为什么被折叠?



