繁体   English   中英

Kubernetes REST API - 未经授权

[英]Kubernetes REST API - Unauthorized

我有以下 Kubernetes REST API 请求

GET https://theserver/api/v1/pods?includeUninitialized=true

并在请求中包含以下 HTTP 标头:

Authorization: Basic ***************
Accept: application/json, */*
User-Agent: kubectl.exe/v1.13.0 (windows/amd64) kubernetes/ddf47ac

结果是以下错误

{
    "kind": "Status",
    "apiVersion": "v1",
    "metadata": {},
    "status": "Failure",
    "message": "Unauthorized",
    "reason": "Unauthorized",
    "code": 401
}

我已经尝试了以下方法:

  • 模拟 kubectl 请求“kubectl describe pods --all-namespaces”工作正常(但我需要 REST)
  • 在 newkind101 对Kubernetes REST API的评论中使用“--v=12”参数来查看底层 REST API 调用 - 看起来和我的一样
  • 阅读 Kubernetes 文档 - 但我未能找到详细信息,哪些 HTTP 标头或/和 HTTP 正文值要发送以正确进行身份验证(我几乎无法从该文档中的 curl 示例调用中检索到)
  • 使用 REST API阅读了Access Kubernetes API,但想在使用像 GoDaddy 这样的框架之前了解我的问题

kubectl 似乎比我用“--v=12”参数看到的要多一些。 此位可能与“.kube/config”文件中的内容有关。 我仍然不知道在我的 HTTP 请求中到底放什么和放在哪里。

据我所知,默认情况下基本身份验证方法是禁用的,需要通过在 API 服务器配置中添加--basic-auth-file标志来启用,因此对 REST API 的所有请求都被标识为匿名用户,可能会导致401 Unauthorized错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM