登峰造极境

  • WIN
    • CSharp
    • JAVA
    • OAM
    • DirectX
    • Emgucv
  • UNIX
    • FFmpeg
    • QT
    • Python
    • Opencv
    • Openwrt
    • Twisted
    • Design Patterns
    • Mysql
    • Mycat
    • MariaDB
    • Make
    • OAM
    • Supervisor
    • Nginx
    • KVM
    • Docker
    • OpenStack
  • WEB
    • ASP
    • Node.js
    • PHP
    • Directadmin
    • Openssl
    • Regex
  • APP
    • Android
  • AI
    • Algorithm
    • Deep Learning
    • Machine Learning
  • IOT
    • Device
    • MSP430
  • DIY
    • Algorithm
    • Design Patterns
    • MATH
    • X98 AIR 3G
    • Tucao
    • fun
  • LIFE
    • 美食
    • 关于我
  • LINKS
  • ME
Claves
长风破浪会有时,直挂云帆济沧海
  1. 首页
  2. 未分类
  3. 正文

Gitlab集成Oauth2单点登录笔记

2020-03-31

如题!

一、编辑gitlab.rb

打开配置文件:

vim /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' => '9485dcbc-2109-42aa-bffb-320d49a3478a',
    'app_secret' => '$2a$10$dQF7IXNZQgOy8bkXTUvwv..zr3sSItgdQtiJAcegcV4yXai3m.Hva',
    'args' => {
      client_options: {
        'site' => 'https://www.dev.claves.com.cn',
        'authorize_url'=>'/console/connect/sso',
        'token_url'=>'https://api.dev.claves.com.cn/auth/oauth2/token',
        'user_info_url' => 'https://api.dev.claves.com.cn/auth/oauth2/userInfo'
      },
      user_response_structure: {
        root_path: [], # i.e. if attributes are returned in JsonAPI format (in a 'user' node nested under a 'data' node)
        attributes: { name: 'username', nickname: 'nickName'} # if the nickname attribute of a user is called 'username'
      },
      name: 'claves', # display name for this strategy
      strategy_class: "OmniAuth::Strategies::OAuth2Generic" # Devise-specific config option Gitlab uses to find renamed strategy
    }
  }
]

配置文件修改完成后,重设配置:

gitlab-ctl reconfigure

重设完毕,等待约30秒。

二、关联Gitlab账号

用户登录gitlab之后,在setting-Account 中点击Connect进行账户关联。

d6

关联成功后,即可使用登录页的Oauth2登录。

三、注意事项

Gitlab貌似必须要手动关联后,才可单点登录。在这个坑里面爬了累计4、5个小时候,才发现必须要手动管理。

标签: 暂无
最后更新:2020-10-28

代号山岳

知之为知之 不知为不知

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2099 登峰造极境. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备14031139号-5

川公网安备51012202000587号