ASP针对Gitlab进行SSO单点登录集成

在这里插入图片描述

概述

ASP官方支持Gitlab第三方登录

创建应用

  1. 应用 中点击创建第三方应用
    在这里插入图片描述

  2. 在列表中选择Gitlab,点击创建应用
    在这里插入图片描述

  3. 在弹窗中输入应用名称,点击确认
    在这里插入图片描述

  4. 新创建的Gitlab应用需要进行配置,在 应用中选择刚才创建的Gitlab应用

  5. 在应用配置Gitlab地址,点击保存

Gitlab对接ASP

对接ASP需要修改Gitlab的配置文件,以下为docker-compose方式部署Gitlab的参考

  1. 修改docker-compose.yml配置文件
services:
  web:
    image: 'gitlab/gitlab-ee:latest'
    restart: always
    hostname: 'localhost'
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://localhost:8001' #Gitlab地址
        gitlab_rails['omniauth_block_auto_created_users'] = false #是否创建新用户
        gitlab_rails['omniauth_allow_single_sign_on'] = ['openid_connect'] 
        gitlab_rails['omniauth_auto_link_user'] = [ "openid_connect"]
        gitlab_rails['omniauth_providers'] =  [{
          name: 'openid_connect',
          label: 'ASP', #Gitlab登录页面显示的登录方式名称
          args: {
            name: 'openid_connect',
            scope: ['openid','profile','email','phone'],
            response_type: 'code',
            issuer: "https://sso.andang.cn",
            discovery: false,
            uid_field: 'sub',
            client_options: {
              'port': 443, #ASP服务端口
              'scheme': 'https', #ASP服务协议
              'host': 'sso.andang.cn', #ASP服务地址,此处为公有云地址
              'authorization_endpoint':'/', #ASP服务登录地址路由
              'token_endpoint':'/token', #ASP服务获取token接口地址路由
              'identifier' => '451887a8-6ef4-45c6-8467-1974f3ae31ba', #应用ID
              'secret' => 'BG6L3jUXh4f2qCPqx5bZWOK+XOqYWJ1vXc2megDD9fb25ZGhP5', #应用密钥
              'redirect_uri' => 'http://192.168.0.122:8001/users/auth/openid_connect/callback' #Gitlab回调地址
            }          
          }
        }]
    ports:
      - '8001:8001'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'

参考:
Gitlab文档

  1. 在Gitlab的登录界面中选择ASP用户源进行登录,跳转到ASP

  2. 在ASP输入账号登录,跳转回Gitlab

  3. 完成登录

问题

  1. 创建应用时提示“系统未激活”
请先导入许可证后再创建应用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安 当 加 密

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值