【发布时间】:2019-10-08 13:21:27
【问题描述】:
我无法使用 rest api 获取命名空间列表,而 rest 端点是 https://<localhost>:8001/api/v1/namespaces
我正在使用邮递员。我将重复这些步骤:
- 创建用户并授予集群管理员权限:
kubectl create serviceaccount exampleuser
- 使用集群角色 cluster-admin 为我们的用户创建了角色绑定:
kubectl create rolebinding <nameofrolebinding> --clusterrole cluster-admin
--serviceaccount default:exampleuser
- 检查角色绑定使用:
kubectl describe rolebinding <nameofrolebinding>
- 现在使用:
kubectl describe serviceaccount exampleuser
kubectl describe secret exampleuser-xxxx-xxxx
我将使用我在这里得到的令牌来验证邮递员。
GET https://<ipofserver>:port/api/v1/namespace
使用不记名令牌进行身份验证。
列出集群中所有命名空间的预期结果。喜欢
kubectl get namespaces。但收到如下警告。
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "namespaces is forbidden: User \"system:serviceaccount:default:exampleuser\" cannot list resource \"namespaces\" in API group \"\" at the cluster scope",
"reason": "Forbidden",
"details": {
"kind": "namespaces"
},
"code": 403
}
我已经为用户使用了“cluster-admin”集群角色,但仍然收到与身份验证相关的错误。 请帮忙。
【问题讨论】:
标签: kubernetes kubernetes-apiserver