关于GitLab,请教是如何配置第三方帐号登录的呢?:报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

关于GitLab,请教是如何配置第三方帐号登录的呢?:报错

2020-06-14 11:44:44 1007 1

最近公司要搞git了,关于服务器的配置,我也是个门外汉啊,请大家有经验指点一下啊

情况是这样的

公司已经一台CentOS了,里面是那个wdcp+nginx+Discuz论坛,这个已经有两年多了。用户上万。

现在要新加一台CentOS,只装GitLab。要让原来在Discuz论坛的用户能直接上这个GitLab。要求就这样。

(我一开始是想这个GitLab直接就装在原来的CentOS,不知道这样行不行得通?这个大家可以说说)

现在这个GitLab吧,所为配置第三方帐号登录,

究竟是用“LDAP”呢?

还是“oauth2”呢?

还是“omniauth”呢?

还是“CAS”呢?GitLab8支持CAS

这四个东西都是不同的吗?按我们现在的服务器配置来,是不是除了加GitLab的服务器,还要再加一台配置第三方帐号登录认证的服务器呢?可以配置在原有的(就是wdcp那一台)机子上面吗?

有经验的来说说啊


取消 提交回答
全部回答(1)
  • kun坤
    2020-06-14 11:44:53

    你的难点在于Discuz是否可以向外开放用户认证接口,以及接口规范是啥。

    这两个基础都没有,也就谈不到Gitlab接入的问题。

    ######回复 @DuLerWeil : 现在一个网站用的是PHP,一个是Ruby,虽然都是用Nginx,能共存吗?######回复 @maya8maya85 : 程序咋部署无所谓,哪怕你把所有东西都装一台笔记本上。######回复 @DuLerWeil : 如果GitLab开放注册,那GitLab注册的帐号又要同步到Dz上,也是一大难题,现在简单点,单向同步,只把Dz的帐号同步过去,先搞定这个吧。你说这个oauth2服务器是又要开一个新的CentOS,还是放在旧的服务器上?######回复 @maya8maya85 : Gitlab可以开放注册啊。 关于Dz和Gitlab对接的问题,估计你是找不到现成的解决方案了。 鉴于OAuth2协议本身很简单,你可以研究Dz的用户表结构(特别是密码加盐算法之类的),然后基于表结构单独写个OAuth2服务器供Gitlab对接用。######GitLab不接受注册,只能在Dz注册再使用GitLab。我觉得这个好难,而且它们不在同一个服务器上,语言什么都不一样。有什么方法或者方向让我知道,我一步该怎么处理呢?######

    Discuz应该是有个UCenter类似单点登录的,但很明显gitlab不会支持UCenter的协议。

    楼主需要研究两个东西

    1. UCenter的协议
    2. ruby rails

    然后参考我这篇文章:http://leo108.com/pid-2138.asp

    ######回复 @leo108 : 还有clone下来的omniauth如何安装?######回复 @leo108 : 这是通过套装安装的Gitlab######回复 @leo108 : 3,omniauth_allow_single_sign_on = true?默认是这”['saml']“,是bool值吗?######回复 @leo108 : 2,gitlab的config/initializers/devise.rb同样没有找到,/var,/opt都没有找到。######回复 @leo108 : 1,写好的mystrategy.rb放在哪里?根据你的指引一篇老外文章是放在"lib/strategies/mystrategy.rb",但根本没有"lib/strategies"这个目录。请问具体放在哪里?######这个要自己搞吧 没搞过 帮不上忙######

    @maya8maya85 

    strategy.rb放/opt/gitlab/embedded/service/gitlab-rails/lib/omni_auth/strategies/

    config/initializers/devise.rb在/opt/gitlab/embedded/service/gitlab-rails/config/initializers/devise.rb

    至于omniauth_allow_single_sign_on,using an array, e.g. ["saml", "twitter"], or as true/false to allow all providers or none.

    clone安装的我没试过,不清楚

    ######回复 @leo108 : C,最后一个就是这个strategy.rb这文件的文件名,好像除了写文件的时候出现了一下,其它地方从来都没看到它的名字,名字没关系吗?成功引用了吗?######回复 @leo108 : B,你那文章中的指明加载路径那段代码,是加在文件config/initializers/devise.rb那里,我加在最后,现在我不知道对不对?反正现在是502,是有个地方错了。######回复 @leo108 : A,这lib/omni_auth目录是没有strategies文件夹的,你的意思是新建文件夹放rb进去吗?######回复 @leo108 : 还有三个地方想请你指导一下。######回复 @maya8maya85 : gitlab本身已经集成了omniauth了,不需要你再装啊######

    @leo108

    ######

    A. 新建文件夹

    B.是真正的最后,在原本最下面的end那行下面

    C.其实就是B里面的最后一个,也就是uco.rb

    ######回复 @leo108 : 调了几天都没成功,一错就是502,也不提示说有什么错误,不好调。。你那文章是没有发布gem的处理,如果是发布的gem,你会装吗?像安装个douban或者weibo什么的,能帮我装一下吗?大神,我按gitlab的文档也没成功######回复 @leo108 : 我比你更生手呢######回复 @maya8maya85 : 我对ruby也不熟,502的话应该是有ror的报错,具体日志路径在哪忘记了,你可以看看问题出在哪里######如果方便的话,我提供服务器相关密码,请你帮助一下,只要能调试到能重定向百度就ok.######特意抽出时间写了一天,按照你的文章指示,由于对语法不了解,我逐行调试,重编译,发现新写的uco.rb文件只要出现module就会502,不解。我安装的是8.10. devise.rb更是一加就502。不解,你的gitlab是什么版本?
    0 0
相关问答

1

回答

DLA 账号如何配置?

2022-01-12 14:26:20 79浏览量 回答数 1

1

回答

Nacos Golang 生态项目中配置监听功能是指什么?

2022-01-04 09:44:55 346浏览量 回答数 1

2

回答

企业邮箱如何升级账号数

2019-03-12 16:38:28 398浏览量 回答数 2

2

回答

You don't have permission to access / on this server.

2018-04-24 00:28:28 7166浏览量 回答数 2

0

回答

用户反馈平台,可直接获取到 App 的用户账号 ID 和手机号码吗?

2017-10-24 10:47:49 1156浏览量 回答数 0

1

回答

You don't have permission to access / on this server.

2017-04-13 13:12:06 2446浏览量 回答数 1

1

回答

You don't have permission to access / on this server.

2016-11-10 22:23:18 2806浏览量 回答数 1

3

回答

如何在第三方APP应用上实现钉钉的第三方登录

2016-07-13 09:51:12 4868浏览量 回答数 3

1

回答

手机端如何禁用某个 dom 的 css 及 js 的 :hover 事件

2016-03-26 11:31:10 2752浏览量 回答数 1

1

回答

帐号IP限制,企业邮箱登录不了

2015-03-17 10:58:47 7358浏览量 回答数 1
+关注
0
文章
13395
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载