• Kubernetes 安全概念详解


    Kubernetes 安全框架 API 认证三关

    • 访问K8S集群的资源需要过三关:认证、鉴权、准入控制
    • 普通用户若要安全访问集群API Server,往往需要证书、Token
      或者用户名+密码;Pod访问,需要ServiceAccount
    • K8S安全控制框架主要由下面3个阶段进行控制,每一个阶段都
      支持插件方式,通过API Server配置来启用插件。
    1. Authentication(认证)
    2. Authorization(授权)
    3. Admission Control(准入控制)


    # 查看ServiceAccount
    kubectl get sa

    NAME SECRETS AGE
    default 1 5d22h
    nfs-client-provisioner 1 3h1m

    授权

    RBAC(Role-Based Access Control,基于角色的访问控制):负责完成授权(Authorization)工作。

    准入控制

    Adminssion Control实际上是一个准入控制器插件列表,发送到API Server的请求都需要经过这个列表中的每个准入控制器
    插件的检查,检查不通过,则拒绝请求。

    1.11版本以上推荐使用的插件:

    --enable-admission-plugins= 
    NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds, ResourceQuota

    RBAC核心概念

    RBAC(Role-Based Access Control,基于角色的访问控制),允许通过Kubernetes API动态配置策略。

    • 角色
      • Role:授权特定命名空间的访问权限
      • ClusterRole:授权所有命名空间的访问权限
    • 角色绑定
      • RoleBinding:将角色绑定到主体(即subject)
      • ClusterRoleBinding:将集群角色绑定到主体
    • 主体(subject)
      • User:用户
      • Group:用户组
      • ServiceAccount:服务账号

  • 相关阅读:
    分割回文串(力扣第131题)
    子集 II(力扣第91题)
    子集(力扣第78题)
    组合总和 III(力扣第216题)
    JavaWeb部分 (前序)
    JavaSE部分 (IO流下)
    JavaSE部分 (IO流上)
    JavaSE部分 (File类)
    Leetcode 08.04 幂集 回溯与位图
    Leetcode 1405 最长快乐字符串 穷举与贪心
  • 原文地址:https://www.cnblogs.com/xiangsikai/p/11424362.html
Copyright © 2020-2023  润新知