Gitlab集成odoo单点登录

Gitlab集成odoo单点登录

1.Gitlab使用oauth2单点登录的背景

OAuth代表资源所有者向客户端应用程序提供对服务器资源的“安全委派访问”。实际上,OAuth允许授权服务器在资源所有者或最终用户的批准下向第三方客户端颁发访问令牌。

OAuth主要用作单一登录服务(SSO),但是您可以找到此功能的许多不同用途。例如,您可以允许用户使用其GitLab.com帐户登录到您的应用程序,或者可以使用GitLab.com对您的GitLab实例进行身份验证(请参阅GitLab OmniAuth)。

“ GitLab导入程序”功能还使用OAuth协议来访问存储库,而无需将用户凭据共享到您的GitLab.com帐户。

GitLab支持两种将新OAuth2应用程序添加到实例的方法。您可以将应用程序添加为普通用户,也可以将其添加到管理区域中。这意味着GitLab实际上可以具有实例范围的应用程序和用户范围的应用程序。除了设置的不同权限级别(用户/管理员)外,它们之间没有区别。默认的回调URL是 http://your-gitlab.example.com/users/auth/gitlab/callback

2. Gitlab已经集成的oauth供应商

各大供应商对Gitlab的集成方式不一样,使用的oauth策略也有所不同,值得注意的是OAuth2Generic这个策略,它是一个通用的策略,在用户需要自定义第三方的供应商的时候可以使用OAuth2Generic该策略。具体配置如下

编辑gitlab.rb

打开配置文件:对于源安装

/etc/gitlab/gitlab.rb

增加Oauth配置:

gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['oauth2_generic']
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['omniauth_providers'] = [
  {
   
    'name' => 'oauth2_generic',
    'app_id' => 'YOUR_APP_ID',
    'app_secret' => 'YOUR_APP_KEY',
    'args' 
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值