kubectl config set-credentials --auth-provider: Error: Unknown flag: --auth-provider

kubectl config set-credentials --auth-provider: Error: Unknown flag: --auth-provider

我已经在 Windows 10 上安装了 kubectl(版本 1.16.0),命令运行正常。

但是,当尝试 运行 kubectl config set-credentials <some_param> --auth-provider=oidc 时,出现以下错误:Error: unknown flag: --auth-provider

即使当我 运行 kubectl config set-credentials -h 我可以看到 --auth-provider 作为一个可能的选项时,也会发生这种情况..

如何解决?

如果您想在身份验证过程中使用 kubectl oidc 身份验证器,它将 id_token 设置为所有请求的承载令牌并在令牌过期后刷新。登录到您的提供商后,使用 kubectl 添加您的 id_token、refresh_token、client_id 和 client_secret 来配置插件。

命令kubectl config set-credentials的正确配置是:

首先,您必须定义要为其创建凭据的用户名。然后您可以传递其他参数(启用 oidc 作为 auth-provider 并向其添加参数)。 kubectl config set-credentials 命令的正确语法应该是这样的:

   $ kubectl config set-credentials USER_NAME \
       --auth-provider=oidc \
       --auth-provider-arg=idp-issuer-url=( issuer url ) \
       --auth-provider-arg=client-id=( your client id ) \
       --auth-provider-arg=client-secret=( your client secret ) \
       --auth-provider-arg=refresh-token=( your refresh token ) \
       --auth-provider-arg=idp-certificate-authority=( path to your ca certificate ) \
       --auth-provider-arg=id-token=( your id_token )

您可以在此处找到有关身份验证的更多信息:kubernetes-authentication