hahahaha
我改了下结构体,将你的这个结构体与用户信息的接口返回数据对应上就行了。

hongming 我可以实现oauth2登陆了,可是现在有以下两个问题:
1.我现在不能同时配置ldap,ldap和oauth2只能生效一个,请问如何解决?
2.kubesphere设置oauth2的时候没有单点登出的字段吗?

  1. 应该是个issue,可以提到github
  2. OAuth2 协议本身是没有登出部分的,认证登录是换取用户身份的过程,登录kubesphere之后用户的会话周期由kubesphere控制,OAuth2 Provider 签发的token应该设置有效期,过期自动失效,另外kubesphere也不会记录此凭证。

    hongming
    这两个问题暂时没法解决吗?
    还有就是,我在其他oauth2客户端进行了登录,这个时候(浏览器有会话保持的时候)我想直接跳到Kubesphere的首页(即已登录状态的首页),这样可以实现吗(目前我们对接jira可以实现)?
    现在是在其他oauth2客户端进行了登录,进kubesphere会跳到登录页,再点击一下"通过oauth2登录"才能跳到首页(不用输入用户名密码)。

      tjushilei 上面提到的问题1 和自动跳转登录近期应该会更新,前端需要稍作调整(现在/oauth/redirect 不会跳转到主页)。问题2可以在插件代码中实现,在获取到用户身份信息之后 ,就可以对provider签发的token进行注销,登录到kubesphere之后换取的是kubesphere中账户的凭证,会话生命周期是由kubesphere进行控制的。

      如果你想实现的是当provider 签发的token失效(被登出) 时自动登出kubesphere, 这个并不属于通用的部分,您可以尝试自己实现该功能

        hongming 首先您的回答我明白了,感谢回答。
        请问如果要支持LDAP和oauth2同时登陆的话,需要修改哪部分代码呢?我们找ldap相关代码没找到。

          tjushilei 您好 您是怎么打包kubesphere后台的,我改完identity provisor后,在kubesphere路径下make ks-apiserver ,然后打包镜像,但是启动apiserver后报Error: moinitoring service address in configuration MUST not be empty, please check configmap/kubesphere-config in kubesphere-system namespace错误

            hahahaha 你的打包方式没错,应该是配置文件写错了,报错应该也是报的配置文件的错,可以修改一下配置文件,查看配置文件的命令是:kubectl -n kubesphere-system edit cm kubesphere-config;重启ks-apiserver的命令是:kubectl -n kubesphere-system rollout restart deploy/ks-apiserver

            配置文件应该是没错的,因为我把ks-apiserver deplyment的镜像替换成ks-apiserver:v3.0.0就能正常运行

              hahahaha 你可以先重置下配置文件,然后再换上你自己的ks-apiserver镜像看看,我们这边之前也是换了新的ks-apiserverv不行,后来把配置文件初始了之后,再换上就可以了

              4 个月 后

              hongming 请问下 上面提到的第一个问题,也就是/oauth/redirect 不会跳转的问题,现在解决了么?如果没有的话,请大佬给个思路我们自己改下?谢谢了

              4 个月 后
              3 个月 后
              5 个月 后