使用Go语言接入Choerodon实现基于OAuth2的统一身份认证登录
原文中文,约4100字,阅读约需10分钟。发表于: 。本文主要记录使用Go语言的 <golang.org/x/oauth2> 库接入OAuth2实现统一身份认证登录的过程。由于我们内网部署了Choerodon开源版1.0,所以OAuth2的认证服务端直接使用Choerodon的OAuth服务。即在我们的自研服务接入Choerodon的OAuth2服务实现统一身份认证登录。
本文记录了使用Go语言的OAuth2库接入OAuth2实现统一身份认证登录的过程,选择了授权码模式。通过Choerodon的OAuth服务进行认证,注册客户端获取参数,重定向用户到认证授权页面获取授权码。回调函数中交换授权码获取访问令牌,并使用令牌进行API请求获取用户权限信息。登出函数清除会话信息并返回登出URL。示例代码将信息和令牌保存在Session中,也可以考虑使用Jwt。未实现刷新令牌功能。