OAuth2.0配置及认证

目前Rainbond支持 Github Gitlab Gitee 三种支持Git仓库对接的Oauth类型和钉钉、阿里云两种仅支持登录功能的Oauth类型。若需要更多类型需参考用例进行扩展或贡献代码。参考实现

Rainbond所有支持的Oauth类型需要正常配置权限才能正常使用,比如Github Gitlab Gitee需要授予获取代码仓库列表等权限,钉钉、阿里云需要授予获取用户信息等权限。详情参考下述文档说明:

Github配置说明

进入 Settings→Developer settings→OAuth Apps→New OAuth App

OAuth2.0配置及认证 - 图1

Github配置

  • Application name: 客户端名称,用户可自己定义
  • Homepage URI: Rainbond服务首页,如https://goodrain.me
  • Authorization callback URL: 回跳路径,该路径用于接收第三方平台返回的凭证,homepage+/console/oauth/redirect,如https://goodrain.me/console/oauth/redirect
  • 权限设置: github的权限设置是通过认证url中的scope参数来指定的,不需要在注册客户端的时候指定。

Gitlab配置说明

进入 User Settings→Applications

OAuth2.0配置及认证 - 图2

Gitlab配置

  • Name: 客户端名称,用户可自己定义
  • Redirect URI: 回跳路径 该路径用于接收第三方平台返回的凭证 homepage+/console/oauth/redirecthttps://goodrain.me/console/oauth/redirect
  • 权限设置: gitlab的权限设置需要指定apiread_userread_repository

Gitee配置说明

进入 设置→第三方应用→创建应用

OAuth2.0配置及认证 - 图3

Gitee配置

  • 应用名称: 客户端名称,用户可自己定义
  • 应用主页: Rainbond服务首页 如https://goodrain.me
  • 应用回调地址: 回跳路径 该路径用于接收第三方平台返回的凭证 homepage+/console/oauth/redirecthttps://goodrain.me/console/oauth/redirect
  • 权限设置: gitee的权限设置需要指定user_infoprojectshook

在Rainbond平台认证

企业管理员才能操作

进入Rainbond首页企业视图设置-->开启OAuth互联服务

OAuth2.0配置及认证 - 图4

Rainbond配置

将注册好的Client IDClient Secret填入,选择对应的OAuth类型,点击确定,此时在该企业下的用户就可以使用OAuth2.0协议进行登录了(自定义的oauth认证服务需要填入认证apiscope令牌api用户信息api等信息)

OAuth服务认证

在配置Oauth服务后在平台右上角的用户信息内可以进行OAuth服务认证,与第三方平台互联

OAuth2.0配置及认证 - 图5

服务认证