下面是我访问kubernetes集群的kubeconfig文件:
kind: ClientConfig
apiVersion: authentication.gke.io/v2alpha1
spec:
name: dev-corp
server: https://10.x.x.x:443
certificateAuthorityData: ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
authentication:
- name: oidc
oidc:
clientID: aaaaad3-9aa1-33c8-dd0-ddddd6b5bf5
clientSecret: ccccccccccccccccc-
issuerURI: https://login.microsoftonline.com/aaaa92-aab7-bbfa-cccf-ddaaaaaaaa/v2.0
kubectlRedirectURI: http://localhost:12345/callback
cloudConsoleRedirectURI: http://console.cloud.google.com/kubernetes/oidc
scopes: offline_access,profile
userClaim: upn
userPrefix: '-'
groupsClaim: groups
preferredAuthentication: oidc
有不同的OAuth授予类型。
我的理解是,以上OAuth授予类型是客户端凭据授予类型,需要client_id、client_secret、令牌URL(issuerURI
(、作用域
字段
kubectlRedirectURI
、cloudConsoleRedirectURI
、userClaim
、userPrefix
的意义是什么?OIDC与OAuth2有何不同?
CCD_ 6不存储CCD_;
userPrefix
、groupsClaim
信息,如图所示。。。。https://github.com/golang/oauth2/blob/master/oauth2.go#L41如何将基于oidc身份验证的
kind:ClientConfig
存储到缓存中?例如CCD_ 11可以与来自client-go的API一起存储以写入CCD_。
KUBECTL_REDDIRECT_URL:KUBECTL oidc登录用于授权的重定向URL。这通常是http://localhost:PORT/callback
格式,其中PORT
是1024
之上的任何端口,在开发人员工作站上可用,例如http://localhost:10000/callback
。您必须向OIDC提供商注册URL,作为客户端应用程序的授权重定向URL。
USER_PREFIX:前缀前置于用户声明,以防止与现有名称发生冲突。默认情况下,颁发者前缀附加到提供给Kubernetes API服务器的用户ID(除非用户声明是电子邮件(。生成的用户标识符是ISSUER_URI#user。我们建议使用前缀,但您可以通过设置USER_PREFIX to -
禁用前缀。
userClaim:客户端配置文件中spec.authentication.oidc.userClaim
中配置的声明名称下的令牌中的user identifier
。
cloudConsoleRedirectURI这个名字讲述了故事,OIDC的云重定向URL,例如在谷歌https://console.cloud.google.com/kubernetes/oidc
的情况下
OIDC与OAuth2
什么';OpenID和OAuth之间有什么区别?
问题中的文件来自OIDC,您正在将该值与Oauth进行比较,两者的处理方式不同,最好使用Oauth配置文件再次更新问题。
api服务器身份验证
你可以查看kubeconfig生成器
kubernetes引擎oidc
如何将基于oidc身份验证的kind:ClientConfig存储到缓存中?
您可以写入文件然后读取,也可以在云存储中的某个位置读取