Kubernetes除了提供了基于CA证书的认证方式,也提供了基于HTTP Token的简单认证方式。各客户端组件与API Server之间的通信方式仍然采用HTTPS,但不采用CA数字证书。这种认证机制与CA证书相比,安全性很低,在生产环境不建议使用。

采用基于HTTP Token的简单认证方式时,API Server对外暴露HTTPS端口,客户端携带Token来完成认证过程。

需要说明的是,kubectl命令行工具比较特殊,它同时支持CA证书简单认证两种方式与API Server通信,其他客户端组件只能配置基于CA证书的认证方式或者非安全方式与API Server通信。

再添加Token认证之前访问apiserver提示未授权:

[root@192 ~]# curl -k --header "Authorization:Bearer admin" https://192.168.3.135:6443/version
{
"kind": "Status",
"apiVersion": "v1",
"metadata": { },
"status": "Failure",
"message": "Unauthorized",
"reason": "Unauthorized",
"code": 401
}

基于Token认证的配置过程如下。

(1)创建包括用户名、密码和UID的文件token_auth_file,将其放置在合适的目录下,例如/etc/kuberntes目录。需要注意的是,这是一个纯文本文件,用户名、密码都是明文。

$ cat /etc/kubernetes/token_auth_file
admin,admin,1
system,system,2

(2)设置kube-apiserver的启动参数“--token-auth-file”,使用上述文件提供安全认证,然后重启API Server服务。

在配置文件/etc/kubernetes/apiserver中添加如下参数:

--secure-port=6443
--token-auth-file=/etc/kubernetes/token_auth_file

重启kube-apiserver:systemctl restart kube-apiserver

(3)用curl客户端工具通过token访问API Server:

# 给apiserver添加Token认证之后,再次访问apiserver就正常了
[root@192 ~]# curl -k --header "Authorization:Bearer admin" https://192.168.3.135:6443/version
{
"major": "1",
"minor": "19",
"gitVersion": "v1.19.0",
"gitCommit": "e19964183377d0ec2052d1f1fa930c4d7575bd50",
"gitTreeState": "clean",
"buildDate": "2020-08-26T14:23:04Z",
"goVersion": "go1.15",
"compiler": "gc",
"platform": "linux/amd64"
}

配置kube-apiserver基于token的认证机制的更多相关文章

  1. 使用 AngularJS & NodeJS 实现基于token 的认证应用(转)

    认证是任何 web 应用中不可或缺的一部分.在这个教程中,我们会讨论基于 token 的认证系统以及它和传统的登录系统的不同.这篇教程的末尾,你会看到一个使用 AngularJS 和 NodeJS 构 ...

  2. 使用 AngularJS & NodeJS 实现基于 token 的认证应用

      认证是任何Web应用中不可或缺的一部分.在这个教程中,我们会讨论基于token的认证系统以及它和传统的登录系统的不同.这篇教程的末尾,你会看到一个使用 AngularJS 和 NodeJS 构建的 ...

  3. NodeJS 实现基于 token 的认证应用

    此段摘自 http://zhuanlan.zhihu.com/FrontendMagazine/19920223 英文原文 http://code.tutsplus.com/tutorials/tok ...

  4. MVC之实现基于token的认证

    安装Nuget包 项目中添加包:dotnet add package Microsoft.AspNetCore.Authentication.JwtBearer 添加认证配置 Startup类中添加如 ...

  5. ASP.NET Core Web API + Angular 仿B站(三)后台配置 JWT 的基于 token 的验证

    前言: 本系列文章主要为对所学 Angular 框架的一次微小的实践,对 b站页面作简单的模仿. 本系列文章主要参考资料: 微软文档: https://docs.microsoft.com/zh-cn ...

  6. 基于Token的WEB后台认证机制

    几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RES ...

  7. 【转】基于Token的WEB后台认证机制

    原谅地址:http://www.cnblogs.com/xiekeli/p/5607107.html 几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每 ...

  8. 基于token的会话保持机制

    session简介 做过Web开发的程序员应该对Session都比较熟悉,Session是一块保存在服务器端的内存空间,一般用于保存用户的会话信息. 用户通过用户名和密码登陆成功之后,服务器端程序会在 ...

  9. WEB后台认证机制

    mark to :http://www.cnblogs.com/xiekeli/p/5607107.html HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API ...

  10. 基于token的后台身份验证(转载)

    几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RES ...

随机推荐

  1. [转帖]TiKV 缩容不掉如何解决?

    TiKV节点缩容不掉,通常遇到的情况: 1.经常遇到的情况是:3个节点的tikv集群缩容肯定会一直卡着,因为没有新节点接受要下线kv的region peer. 2.另外就是除缩容tikv外,剩下的KV ...

  2. 一个PCI-E的硬盘参数

    看了下 HDD 随机 IOPS 在 100-200 之间 (读写) SATA的 SSD 随机IOPS 在 读 100k 写 20k 左右U.2的SSD 的随机IOPS 在 读 500k 写 50k 左 ...

  3. Spring 应用合并之路(二):峰回路转,柳暗花明 | 京东云技术团队

    书接上文,前面在 Spring 应用合并之路(一):摸石头过河 介绍了几种不成功的经验,下面继续折腾- 四.仓库合并,独立容器 在经历了上面的尝试,在同事为啥不搞两个独立的容器提醒下,决定抛开 Spr ...

  4. 浅浅的源码剖析grpc-go(一)

    最近在学习 rpc 相关的知识,如果让我去从头设计一个 rpc,我从使用者的角度出发,究竟需要去做一下什么工作? 第一,RPC 本质上就是一个远程调用,那肯定就需要通过网络来传输数据.虽然传输协议可以 ...

  5. Ant Design Vue中TreeSelect详解

    <template> <a-tree-select v-model:value="value" style="width: 320px" :t ...

  6. Python 潮流周刊第 37 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...

  7. Win32汇编:算数运算指令总结

    整理复习汇编语言的知识点,以前在学习<Intel汇编语言程序设计 - 第五版>时没有很认真的整理笔记,主要因为当时是以学习理解为目的没有整理的很详细,这次是我第三次阅读此书,每一次阅读都会 ...

  8. 基于OpenCV-Python的图像位置校正和版面分析

    前言 使用opencv对图像进行操作,要求:(1)定位银行票据的四条边,然后旋正.(2)根据版面分析,分割出小写金额区域. 图像校正 首先是对图像的校正 读取图片 对图片二值化 进行边缘检测 对边缘的 ...

  9. SpringBoot不再需要@Autowired来注入属性

    实操部分 需要lombok依赖 在对应需要注入属性的类上添加注解 @RequiredArgsConstructor 所有需要注入的属性改为final修饰 为什么 lombok的@RequiredArg ...

  10. 案例:DG备库报错ORA-600[2619]致使mrp进程异常终止

    很多刚入行的DBA往往一看有ORA-600这类错误就不知所措,直接就想寻求中高级DBA支持,甚至在网上还看到有人说,判断一个Oracle DBA是否达到中级以上,就是看其是否可以独立思考处理ORA-6 ...