【问题标题】:How to retrieve kubectl config value from Dex server configured with LDAP using curl command?如何使用 curl 命令从配置了 LDAP 的 Dex 服务器中检索 kubectl 配置值?
【发布时间】:2021-04-15 22:24:16
【问题描述】:

我们公司有多个 Kubernetes 集群。要获取 kubectl 配置内容,我们使用 Dex 登录并将内容复制/粘贴到 kubectl 的本地配置中。

我想让这个自动化,所以运行一堆命令来使用curl获取内容。

我无法通过检查请求响应来解决问题。如果有人知道怎么做,请帮助我。

【问题讨论】:

  • 可以在 CLI 模式下运行 dex 吗?和ssh类似吗?

标签: kubectl kubeconfig


【解决方案1】:

我找到了方法。所以我们需要打两个电话。第一个检索登录页面,我们可以在其中获取请求 ID:

the_id=$(curl -s -v -L "https://login.${cluster}" | grep -Po 'action="(.*)"')

以上在响应中搜索属性action=,它告诉您在哪里提交请求

然后在下一次调用中使用the_id

konfig=$(curl --insecure POST -H 'Content-Type: application/x-www-form-urlencoded' -d "login=$username&password=$password" -v -L "${cluster}${the_id}" | grep -Pzo '(?s)id=".*?</')

此命令将返回一个 HTML 页面,您可以在其中找到配置。显然,对您而言,它可能是不同的响应,但从第一次通话中获取 request id 是我一开始就错过的关键。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 2020-02-14
    • 2019-07-31
    • 1970-01-01
    相关资源
    最近更新 更多