0

尝试使用以下文档的 kubernetes API 检索 kubernetes 集群的详细信息,例如命名空间和 pod 详细信息

接口:

<publicServiceEndpointURL>/api/v1/namespaces
Headers:
Authorization: bearer <id_token>

<id_token>- 生成的 IAM 令牌。

将在启用 SSL 证书的邮递员上收到证书错误,否则会抛出 403 Forbidden 错误

Error: unable to verify the first certificate

结果禁用 SSL 证书验证。

{
    "kind": "Status",
    "apiVersion": "v1",
    "metadata": {},
    "status": "Failure",
    "message": "namespaces is forbidden: User \"system:anonymous\" cannot list resource \"namespaces\" in API group \"\" at the cluster scope",
    "reason": "Forbidden",
    "details": {
        "kind": "namespaces"
    },
    "code": 403
}

尝试使用 curl 会导致相同的错误

curl -k <publicServiceEndpointURL>/api/v1/namespaces -H "Authorization: Bearer <token>"

带有 API 调用的 chrome 上的错误

net::ERR_CERT_AUTHORITY_INVALID

我将如何访问此 API?

4

1 回答 1

0

您是否有权列出集群中的命名空间?例如,如果您通过 CLI 以同一用户身份登录,您可以运行kubectl get namespaces吗?它看起来像一个权限错误。对于集群中的所有名称空间,用户将需要 IBM Cloud IAM Reader 服务角色(它为您提供 RBACview角色)。

于 2020-06-18T11:45:33.670 回答