kubernetes - 为什么 Kubernetes 返回未经授权的错误?
问题描述
我使用Kubernetes 文档通过 API-server 创建用户证书请求。
cat <<EOF | kubectl apply -f -
apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
metadata:
name: myuser
spec:
request: $(cat server.csr | base64 | tr -d '\n')
usages:
- digital signature
- key encipherment
- server auth
EOF
我生成了证书,创建了 kubeconfig 文件并成功创建了必要的角色/角色绑定。但是,当我尝试访问集群时,出现以下错误。我很确定问题出在上面的 yaml 定义上;但想不通。
users error: You must be logged in to the server (Unauthorized)
请问有什么想法吗?
解决方案
似乎,问题出在“规范”部分。它是用户身份验证而不是服务器身份验证。因此,“服务器身份验证”应该是客户端身份验证。
spec:
request: $(cat server.csr | base64 | tr -d '\n')
usages:
- digital signature
- key encipherment
- client auth
推荐阅读
- angular - 路由更改时角度数据不会持续存在
- r - 如何使用索引使用 dplyr 重构非常宽的数据帧?
- python - 类型错误:预期字节,找到描述符
- docker - Ubuntu 上的 Docker 主机占用了 VM 上的所有空间
- laravel - Laravel 验证有效,但返回 200 而不是 422
- ansible - 在任务条件中使用 ansible 变量
- javascript - 使用 Leaflet 和 Vue.js 创建地图
- python - 如何在 Python 中将字符串的第一个字母大写,而忽略 HTML 标记?
- java - 查找给定日期的所有过帐日期(会计)
- javascript - Stencil - 全局 CSS 没有集成到 React