kubernetes权威指南第4版第6章节读书笔记一米八大高个儿

HTTPToken的认证是用一个很长的特殊编码方式的并且难以被模仿的字符串—Token来表明客户身份的一种方式。在通常情况下,Token是一个很复杂的字符串,比如我们用私钥签名一个字符串后的数据就可以被当作一个Token。此外,每个Token对应一个用户名,存储在APIServer能访问的一个文件中。当客户端发起API调用请求时,需要在HTTPHeader里放入Token,这样一来,APIServer就能识别合法用户和非法用户了HTTPBase认证:HTTP是无状态的,浏览器和Web服务器之间可以通过Cookie来进行身份识别。桌面应用程序(比如新浪桌面客户端、SkyDrive客户端、命令行程序)一般不会使用Cookie,那么它们与Web服务器之间是如何进行身份识别的呢?这就用到了HTTPBase认证,这种认证方式是把“用户名+冒号+密码”用BASE64算法进行编码后的字符串放在HTTPRequest中的HeaderAuthorization域里发送给服务端,服务端在收到后进行解码,获取用户名及密码,然后进行用户身份鉴权

RBAC(Role-BasedAccessControl,基于角色的访问控制)在Kubernetes的1.5版本中引入,在1.6版本时升级为Beta版本,在1.8版本时升级为GA

◎对集群中的资源和非资源权限均有完整的覆盖。◎整个RBAC完全由几个API对象完成,同其他API对象一样,可以用kubectl或API进行操作。◎可以在运行时进行调整,无须重新启动APIServer。

1.RBAC的API资源对象说明RBAC引入了4个新的顶级资源对象:Role、ClusterRole、RoleBinding和ClusterRoleBinding。同其他API资源对象一样,用户可以使用kubectl或者API调用等方式操作这些资源对象1)角色(Role)一个角色就是一组权限的集合,这里的权限都是许可形式的,不存在拒绝的规则。在一个命名空间中,可以用角色来定义一个角色,如果是集群级别的,就需要使用ClusterRole了

例如,在下面的例子中,虽然secret-reader是一个集群角色,但是因为使用了RoleBinding,所以dave只能读取development命名空间中的secret

3.常用的角色示例.注意,下面的例子只展示了rules部分的内容(1)允许读取核心API组中的Pod资源:

(2)允许读写extensions和apps两个API组中的deployment资源:

(3)允许读取pods及读写jobs

(4)允许读取一个名为my-config的ConfigMap(必须绑定到一个RoleBinding来限制到一个Namespace下的ConfigMap)

(5)读取核心组的Node资源(Node属于集群级的资源,所以必须存在于ClusterRole中,并使用ClusterRoleBinding进行绑定):

4.常见的角色绑定示例.注意,在下面的例子中只包含subjects部分的内容。

(1)用户名alice@example.com:

(2)组名frontend-admins:

(3)kube-system命名空间中的默认ServiceAccount:

(4)qa命名空间中的所有ServiceAccount:

(5)所有ServiceAccount:

(6)所有认证用户(Kubernetes1.5以上版本):

(7)所有未认证用户(Kubernetes1.5以上版本):

(8)全部用户(Kubernetes1.5以上版本):

对系统角色的说明如表6.1所示

有些默认角色不是以“system:”为前缀的,这部分角色是针对用户的。其中包含超级用户角色(cluster-admin),有的用于集群一级的角色(cluster-status),还有针对Namespace的角色(admin、edit、view)

RBACAPI拒绝用户通过编辑角色或者角色绑定进行提升权限。这一限制是在API层面做出的,因此即使RBAC没有启用也仍然有效

用户要对角色进行创建或更新操作,需要满足下列至少一个条件:

(1)拥有一个角色的所有权限,且与该角色的生效范围一致(如果是集群角色,则是集群范围;如果是普通角色,则可能是同一个命名空间或者整个集群)(2)为用户显式授予针对该角色或集群角色的提权(escalate)操作的权限(要求Kubernetes1.12及以上版本)

对Kubernetes1.10及以上版本设置如下

对Kubernetes1.9及以下版本设置如下:

◎这个Token的内容来自Pod里指定路径下的一个文件(/run/secrets/kubernetes.io/serviceaccount/token),这种Token是动态生成的,确切地说,是由KubernetesController进程用APIServer的私钥(--service-account-private-key-file指定的私钥)签名生成的一个JWTSecret。◎这个Token的内容来自Pod里指定路径下的一个文件(/run/secrets/kubernetes.io/serviceaccount/token),这种Token是动态生成的,确切地说,是由KubernetesController进程用APIServer的私钥(--service-account-private-key-file指定的私钥)签名生成的一个JWTSecret。◎在官方提供的客户端REST框架代码里,通过HTTPS方式与APIServer建立连接后,会用Pod里指定路径下的一个CA证书(/run/secrets/kubernetes.io/serviceaccount/ca.crt)验证APIServer发来的证书,验证是否为CA证书签名的合法证书。◎APIServer在收到这个Token以后,采用自己的私钥(实际上是使用service-accountkey-file参数指定的私钥,如果没有设置此参数,则默认采用tls-private-key-file指定的参数,即自己的私钥)对Token进行合法性验证。

我们接下来继续分析在上面的认证过程中所涉及的Pod中的以下三个文件。◎/run/secrets/kubernetes.io/serviceaccount/token。◎/run/secrets/kubernetes.io/serviceaccount/ca.crt。◎/run/secrets/kubernetes.io/serviceaccount/namespace(客户端采用这里指定的namespace作为参数调用KubernetesAPI)。

这三个文件由于参与到Pod进程与APIServer认证的过程中,起到了类似secret(私密凭据)的作用,所以它们被称为KubernetesSecret对象。Secret从属于ServiceAccount资源对象,属于ServiceAccount的一部分,在一个ServiceAccount对象里面可以包括多个不同的Secret对象,分别用于不同目的的认证活动

查看系统中的ServiceAccount对象,看到有一个名为default的ServiceAccount对象,包含一个名为default-token-77oyg的Secret,这个Secret同时是Mountablesecrets,表明它是需要被挂载到Pod上的default-token-77oyg包含三个数据项,分别是token、ca.crt、namespace。联想到Mountablesecrets的标记,以及之前看到的Pod中的三个文件的文件名,我们恍然大悟:在每个Namespace下都有一个名为default的默认ServiceAccount对象,在这个ServiceAccount里面有一个名为Tokens的可以当作Volume被挂载到Pod里的Secret,当Pod启动时,这个Secret会自动被挂载到Pod的指定目录下,用来协助完成Pod中的进程访问APIServer时的身份鉴权

其中:(1)名为Tokens的Secret用于访问APIServer的Secret,也被称为ServiceAccountSecret。(2)名为imagePullSecrets的Secret用于下载容器镜像时的认证过程,通常镜像库运行在Insecure模式下,所以这个Secret为空。(3)用户自定义的其他Secret,用于用户的进程。如果一个Pod在定义时没有指定spec.serviceAccountName属性,则系统会自动为其赋值为default,即大家都使用同一个Namespace下的默认ServiceAccount。如果某个Pod需要使用非default的ServiceAccount,则需要在定义时指定:

Kubernetes之所以要创建两套独立的账号系统,原因如下。◎User账号是给人用的,ServiceAccount是给Pod里的进程使用的,面向的对象不同。◎User账号是全局性的,ServiceAccount则属于某个具体的Namespace。◎通常来说,User账号是与后端的用户数据库同步的,创建一个新用户通常要走一套复杂的业务流程才能实现,ServiceAccount的创建则需要极轻量级的实现方式,集群管理员可以很容易地为某些特定任务创建一个ServiceAccount。◎对于这两种不同的账号,其审计要求通常不同。◎对于一个复杂的系统来说,多个组件通常拥有各种账号的配置信息,ServiceAccount是Namespace隔离的,可以针对组件进行一对一的定义,同时具备很好的“便携性”。

Secret的主要作用是保管私密数据,比如密码、OAuthTokens、SSHKeys等信息。将这些私密信息放在Secret对象中比直接放在Pod或DockerImage中更安全,也更便于使用和分发

在上面的例子中,data域的各子域的值必须为BASE64编码值,其中password域和username域BASE64编码前的值分别为value-1和value-2

一旦Secret被创建,就可以通过下面三种方式使用它

(1)在创建Pod时,通过为Pod指定ServiceAccount来自动使用该Secret(2)通过挂载该Secret到Pod来使用它。(3)在Docker镜像下载时使用,通过指定Pod的spc.ImagePullSecrets来引用它。第1种使用方式主要用在APIServer鉴权方面.下面的例子展示了第2种使用方式:将一个Secret通过挂载的方式添加到Pod的Volume中:

每个单独的Secret大小不能超过1MB,Kubernetes不鼓励创建大的Secret,因为如果使用大的Secret,则将大量占用APIServer和kubelet的内存。当然,创建许多小的Secret也能耗尽APIServer和kubelet的内存

若想启用PodSecurityPolicy机制,则需要在kube-apiserver服务的启动参数--enable-admission-plugins中进行设置

创建一个PodSecurityPolicy,配置文件psp-non-privileged.yaml的内容如下

在PodSecurityPolicy对象中可以设置下列字段来控制Pod运行时的各种安全策略

结果为允许Pod访问宿主机上以“/foo”为前缀的路径,包括“/foo”“/foo/”“/foo/bar”等,但不能访问“/fool”“/etc/foo”等路径,也不允许通过“/foo/../”表达式访问/foo的上层目录(7)FSGroup:设置允许访问某些Volume的GroupID范围,可以将规则(rule字段)设置为MustRunAs、MayRunAs或RunAsAny。◎MustRunAs:需要设置GroupID的范围,例如1~65535,要求Pod的securityContext.fsGroup设置的值必须属于该GroupID的范围◎MayRunAs:需要设置GroupID的范围,例如1~65535,不强制要求Pod设置securityContext.fsGroup。◎RunAsAny:不限制GroupID的范围,任何Group都可以访问Volume。(8)ReadOnlyRootFilesystem:要求容器运行的根文件系统(rootfilesystem)必须是只读的。(9)allowedFlexVolumes:对于类型为flexVolume的存储卷,设置允许使用的驱动类型,例子如下。

例2:要求Pod运行用户为非特权用户;禁止提升权限;不允许使用宿主机网络、端口号、IPC等资源;限制可以使用的Volume类型,等等

然后创建一个ClusterRoleBinding与用户和ServiceAccount进行绑定

THE END
1.王者战队扩张到170人要多少钱(王者战队扩张到110人需要多少钱抱歉,由于您没有提供与王者战队扩张相关的具体信息和费用标准,我无法直接回答这个问题。"王者战队"可能指的是电子竞技团队,但不同团队的扩张成本会因多种因素而异,包括但不限于: 地理位置:战队扩张可能涉及搬迁或在新地区建立分部,这将产生不同的房地产和运营成本。 http://tkb.yu5.cc/w509/107685274.html
2.i上班应用介绍 i上班,集高效签到、请假审批、加班记录与统计分析于一体,让考勤管理变得轻松便捷。无论身处何地,一键操作,随时掌握团队出勤动态,提升办公效率!应用分发 开发者提交应用 应用提交与审核 开发者支持文档 常见问题及解答 开发者服务 小米消息推送服务 应用检查更新SDK 小米帐号接入 结构化数据存储服务 轻应用开放https://app.mi.com/details?id=uni.UNI874D795
3.彈性上班薪資最高36400!媽咪樂居家管家熱烈招募中!媽咪樂加入【媽咪樂居家服務團隊】,輕鬆工作7小時,薪資最高可達 36,400元首月彈性排班,單次服務高達740元,輕鬆上手,輕鬆賺 我們提供: 1.高穩定薪資及豐厚獎金 2.勞健保、勞退6%、特休等完整福利 3.週休二日,休假比照公家機關 4.完整培訓與晉升機會,輕鬆變身「專業居家管家」 工作內容:居家清潔打掃、物品整理、衣物https://www.1111.com.tw/job/130430524
4.用降换金钱再用金钱买降的故事(拿降换金钱)"健康的不可替代性:为何不应以健康为代价换取金钱" 阐述健康在个人生活中的核心地位,强调其无法用金钱衡量的价值。讨论过度工作、不良生活习惯等导致的健康问题,以及这些问题对个人和家庭的长期影响。提供保持健康的建议,如均衡饮食、规律运动和良好的睡眠习惯。http://www.cai3.cn/w474/107561984.html
5.农民工招聘网2025年农民工招聘信息上一页 1/7 下一页 相关搜索 普通车床操作招聘车床操作招聘塑胶修模技工招聘厨房杂工招聘电火花操作招聘隔膜泵操作工招聘接线工招聘钢化炉操作工招聘光学精密加工操作工招聘EDM技工招聘 相关推荐 热门城市 相关公司 相关模板 热门企业 齿轮滚齿操作工招聘 制药车间操作工招聘 国企一线操作工招聘 焊接设备操作技工招聘 https://m.liepin.com/zpnongmingong/
6.不需要交米,会打字就行赚钱app吧1 2 下一页 尾页 52回复贴,共2页 ,跳到 页确定 <返回赚钱app吧求助 不需要交米,会打字就行 只看楼主收藏回复 西瓜汁↓ 核心吧友 7 时间自由每小时30/35 点击展开,查看完整图片 送TA礼物 谨防高回报高收益理财诈骗! 来自Android客户端1楼2024-12-19 10:48回复西瓜https://tieba.baidu.com/p/9342993005
7.一米工作app下载一米工作安卓版下载v6.3.1《一米工作》是一款专注于工厂技工在线求职的手机app,这款软件不仅能为你提供丰富的高薪职位,更可以让你在这款软件中享受到工资日结,100%包面试到岗的贴心服务! 软件详情 一米工作专注为工厂蓝领普工、技工用户提供优质的求职服务,无中介、不收费、工厂多!通过“一米工作”,您可以申请全国各地名企大厂的招聘职位https://app.3dmgame.com/android/90068.html
8.一米工作app下载一米工作最新版2022下载v8.0.0IOS下载 一米工作 简介 一米工作是一款实用的服务类型的软件,这个应用是专为那些刚毕业没有工作以及想跳槽的用户所打造,简单清爽的界面,含有丰富全面的岗位,各种不同的工作都有涉及,提供的资源应有尽有,能够很好的满足大家的所有需求,不用担心找不着工作。 《一米工作》特色: 1.应用还有专门可以聊天的社区,大家https://gps.it168.com/detail/206733.html
9.一米工作iPhone版免费下载一米工作app的ios最新版8.1.2下载一米工作为您供给了数万个普工、操作工、作业员、服务员、技工等工作岗位。我们实行严格的企业准入制度,一米工作展示的招工企业全部经过实地走访和审查,薪酬福利真实可靠、工作环境安全放心。 【诚信招聘,免费求职】 一米工作完全按照用户意愿申请面试入职,绝不以任何借口虚假招聘。您在一米求职,无需缴纳任何费用! https://www.duote.com/ios/35706.html
10.梨树县公安局交通管理大队关于逐步恢复车管所窗口业务的通告(二)办事群众必须服从工作人员管理,对违反规定的按照有关法律规定追究责任。 (三)未能在预约时间前来办理业务的,需重新预约。 六、联系电话 (一)窗口预约电话; 车管所:0434-5055531 违章处理窗口:18543417186 (二)服务企业绿色通道预约电话; 车管所:0434-5055531 https://www.thepaper.cn/newsDetail_forward_6465012
11.「职位对比」无名传媒短视频剪辑怎么样我要招聘 我要找工作 登录/注册 职位&公司对比 职位关闭 短视频剪辑 - K 无名传媒 文化艺术/娱乐 未融资 更换职位 招聘中 视频发布 - K 鑫米自媒体 社交网络与媒体 更换职位 立即沟通 职位详情 汕尾 不限 不限 短视频 电商视频 剪辑 合成 1.工作内容:视频剪辑、视频内容为产品展示 2.工作要求:有https://www.zhipin.com/job_pk/40993bd74e4d6adf1XFy29-8EVdQ/a312ebaf633155c01HJy2928FVJX.html
12.福州市鼓楼区艾子一米阳光室内设计工作室—— 产品展示一米阳光装饰设计工坊—— 服务范围涉足家装领域和部分工装专场;以详细设计为主导,部分施工为辅的专业设计工坊。设计风格不循规蹈距,设计风格多样化。 轻奢风 群升江山城轻奢 香开长龙效果网络广告 观风亭社区软装 越界餐吧 别墅改造-小孩房改http://www.azymyg.com/
13.动图来了!校园防疫小提醒,咱们一起这样做!近来疫情形势严峻 校园防疫尤为重要 具体怎么做,一组动图来提醒 测量温度安全你我他 严格做好防护措施 按乘电梯要注意 筑牢安全防疫知识 合理丢弃已用口罩 一米距离要牢记 合理通风不感冒 勤洗小手爱干净 消毒工作时刻进行 勤洗手、勤消毒、爱干净、讲卫生 https://www.cbbn.net/folder34/folder35/folder40/folder67/2022-03-06/UeBExQZ1AcLnpzWR.html
14.南京市栖霞区人民政府深度报道创新网格化社会治理机制的围绕如何开展好创新网格化社会治理工作,南京先从查摆难题入手。针对基层社会治理存在的问题发现难、工作联动难、基层减负难、群众办事难等难点问题,聚焦网格化管理,我市开展一系列调研活动,先后组织市区两级政法委书记两次参与“一日网格员”体验活动,广泛听取基层和群众意见。 http://www.njqxq.gov.cn/qxqrmzf/201805/t20180515_1276380.html
15.中庆燃气:保民生,守安全!冬季燃气保供进行时应战——保障最后一米用气 11月初,大风雨雪袭击哈尔滨,中庆公司与寒潮赛跑,公司365名巡检人员对哈尔滨市3332公里燃气管线、4586座阀门井、9691座调压箱、1299座调压柜进行巡检,保证燃气设备设施正常运行;62名大修班工作人员,在暴雪天气来临之际对调压站柜伴热系统进行了启动,保证调压设备正常运行;238名维修人员随时待命https://www.my399.com/p/294581.html
16.2014年元宵灯谜大全及解析谜语解析及答案:李来群,样拆木+羊,子,裁衣裙=君,木+子=李,一米=来,君+羊=群。该象棋大师于1982年首次登上全国个人冠军宝座,是解放以来男子象棋冠军第一次过黄河,结束了南方棋手独霸的局面。 20、谜语题目:奥巴马的愿望(古籍) 谜语解析及答案:三国志,奥(地利)、巴(西)、马(来西亚)这是三个国家,愿望扣https://m.wang1314.com/doc/webapp/topic/13671794.html
17.非工作人员禁止入内标识图片免费下载千图网为您找到949张非工作人员禁止入内标识相关素材,千图网还提供非工作人员禁止入内标识图片,非工作人员禁止入内标识素材, 非工作人员禁止入内标识模板等免费下载服务,千图网是国内专业创意营销服务交易平台,一站式解决企业营销数字化、协同化,实现营销转化效果增长!https://www.58pic.com/tupian/feigongzuorenyuanjinzhiruneibiaoshi.html
18.周末工作总结汇报实用48篇一年来的工作过去了,确实是感觉非常的有动力,这一年的工作当中,维持着一个好的工作状态,作为一名酒店主管我也是非常清楚接下来应该怎么去做,我们酒店在过去一年来的当中,我不断的积累各方面的经验,我相信这也是我应该要求做好的,在这一点上面不断的提高自己能力,现在我感觉非常的有意义,我清楚我们酒店过去一年来的https://www.xiaorob.com/fanwen/zongjie/269543.html
19.文体旅游局年度工作总结1.docx文档介绍:该【文体旅游局年度工作总结 1 】是由【毛毛雨】上传分享,文档一共【24】页,该文档可以免费在线阅读,需要了解更多关于【文体旅游局年度工作总结 1 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑https://m.taodocs.com/p-1118690029.html
20.职业暴露应急预案及处理流程范文(6篇).docx最后,分析职业暴露后的训练组织参演者和参观者在训练过程中存在的过程缺陷和训练的优缺点,优化我院职业暴露发生的紧急预案和工作流程,提供更方便的临床工作。第3篇: 职业暴露应急预案及处理流程 ?一、组织管理 为顺利开展核酸检测工作,成立核酸检测领导小组,负责组织参检人员有序与医务人员对接(登记组、检测组)开展https://m.book118.com/html/2023/0818/8124131040005122.shtm
21.滚动丨“3·21”东航MU5735航班机上132人全部遇难总台央视记者 唐国荣:就在这个飞机残骸位置50米的地方,又发现了另一个飞机残骸,是一个圆柱体的飞机残骸,所以说现在对于失事客机的残骸搜救工作,随着这个面不断扩大和点的不断深入,是在有条不紊地进行当中的。总台央视记者 唐国荣:这张图是消防提供的核心现场的一个救援图。今天这个图跟昨天相比,最大的一个变化https://content-static.cctvnews.cctv.com/snow-book/index.html?item_id=4802309036244721781