问题描述
我正在尝试使用 ServiceAccount 访问我的 Kubernetes API,该 ServiceAccount 使用用户定义的机密和一些 ClusterRoles。我尝试将 kubernetes.io/basic-auth
类型的 Secret 添加到我的 ServiceAccount 并删除所有 ClusterRoleBinding,只留下:
apiVersion: v1
kind: Secret
Metadata:
name: my-token
annotations:
kubernetes.io/service-account.name: myaccount
type: kubernetes.io/basic-auth
stringData:
username: admin
password: t0p-Secret
---
apiVersion: v1
kind: ServiceAccount
Metadata:
name: myaccount
secrets:
- name: my-token
但是当我尝试使用基本身份验证发送 GET
请求时,响应是 401 Unauthorized
。使用 ServiceAccount 自动生成的 JWT 令牌工作正常,但我需要能够设置令牌或基本身份验证。
curl --location --request GET 'https://my-cluster.com:6443/api/' \
--header 'Authorization: Basic YWRtaW46dDBwLVNlY3JldA='
或邮递员:
这是我的 kubectl
版本:
Server Version: version.Info{Major:"1",Minor:"20",GitVersion:"v1.20.4+k3s1",GitCommit:"838a906ab5eba62ff529d6a3a746384eba810758",GitTreeState:"clean",BuildDate:"2021-02-22T19:49:27Z",GoVersion:"go1.15.8",Compiler:"gc",Platform:"linux/amd64"}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)