我正在使用REST API与Rancher 1.6服务器通信。我需要创建一个K8S集群,并以完全自动化的方式进行。服务器不安全。我不断收到这样的“禁止”错误:{"id":"65256ad5-0dfb-478d-9931-48afc499a1e4","type":"error","links":{},"actions":{},"status":403,"code":"Forbidden","message":"Forbidden","detail":null,"baseType":"error"}
。
我打的电话很简单。我将其简化为消除与项目模板相关的错误。 IOW,添加可选参数无效:
curl -X POST -H 'Content-Type: application/json' -d '{ "name": "whatever" }' 'http://10.10.0.100:8080/v2-beta/projects/test/projects'
是否可以使用REST API创建项目并无需身份验证?
答案 0 :(得分:1)
您需要创建API密钥才能使用Rancher API。如果您不想这样做,则需要在整个Rancher服务器上禁用身份验证。在没有公共访问权限但严格不鼓励的严格私有,安全的环境中,这可能会很好。
此外,如果您在浏览器中访问API URL,则会看到一个很酷的UI实用程序,可让您从浏览器本身创建资源。此外,该工具还提供了可从命令行使用的代码段。
编辑1:
您可能会发现这些有用:
答案 1 :(得分:0)
访问控制已关闭,或者您将返回401。禁止访问是因为您正在向错误的端点发送请求(项目中没有ID为“ test”的项目,并且项目中也没有“ projects”资源),不是因为您没有发送API密钥。
发送创建项目的正确位置是/v2-beta/projects
。
curl -X POST -H 'Content-Type: application/json' -d '{"name": "foo"}' http://10.10.0.100:8080/v2-beta/projects