背景:
公司搭建了Gitlab,然后和AD账号进行集成,采用AD账号进行认证。
问题:
其他集成的系统使用AD账号都无认证错误的问题,只有Gitlab认证时,提示报错:Invalid credentials
解决办法:
通过参考这个帖子参考帖,知道问题出在了gitlab.rb配置文件上,贴出公司此文件中的关键代码
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'LDAP'
host: '192.168.0.6'
port: 389
uid: 'cn'
method: 'plain'
bind_dn: 'cn=Young,cn=users,dc=Wyoungers,dc=com'
password: '123456'
active_directory: true
allow_username_or_email_login: false
block_auto_created_users: false
base: 'dc=Wyoungers,dc=com'
user_filter: ''
# attributes:
# username: ['uid', 'userid', 'sAMAccountName']
# email: ['mail', 'email', 'userPrincipalName']
# name: 'cn'
# first_name: 'givenName'
# last_name: 'sn'
# ## EE only
# group_base: ''
# admin_group: ''
# sync_ssh_keys: false
EOS

检查了一下这个配置文件和里边用的AD信息都正常,没有什么问题,为什么登录时,就是会报错呢,无意之间测试了一个英文账户(cn和SamaccountName)都是英文字母的,发现他能认证成功,这时候我就觉得这个集成没有问题,应该是哪里的么有配置正确。
通过在AD中查看一个中文账户和英文账户的却别,发现两者区别在于cn这个属性上,英文账户的cn属性和SamaccountName属性是一模一样的,但是中文的两个不一样,中文的cn是中文显示名,SamaccountName是登录账号。
于是用了一个中文名字去认证登录,发现通过了,能够正常通过。再返回去查看gitlab.rb配置文件,这时注意到 “uid: ‘cn’”这个配置,此命令式说调用AD中CN属性值作为Gitlab登录账户,当AD中都是英文账户时,这个命令是没有问题的,但是当存在中文账户时,需要改为uid:‘SamAccountName’,这样账户就改为了AD一样的登录账号。

结果:
到此我们已经解决了问题,进行分析发现,我们有时候不能直接照搬Gitlab的源代码,还需要进行修改,以适应新的变化。

欢迎大家关注我的博客,及时获取最新的IT资讯。

Gitlab和AD账号集成,账号登录时报错:Invalid credentials相关推荐

  1. AD域集成Windows登录验证方案(SSO实现)

    AD域集成Windows登录验证(SSO实现) 方案一:ie集成windows登录验证,使用组策略可实现免登录. 弊端:需要把web部署到IIS上面,技术较老 方案二:使用ldap连接AD域,前端传送 ...

  2. spring集成kafka运行时报错:Failed to construct kafka producer] with root cause

    spring集成kafka运行时报错:Failed to construct kafka producer] with root cause org.apache.kafka.common.Kafka ...

  3. RVCT远程登录时报错的解决办法

    目录(?)[-] RVCT远程登录时报错的解决办法 关于RVDS40破解中出现Cannot obtain license的解决办法 Cannot obtain license for Compiler ...

  4. python中使用tomorrow多线程时报错invalid syntax

    python中使用tomorrow多线程时报错invalid syntax如何解决?具体报错信息如下: 解决方案: 需要点击打开tomorrow.py文件,把42行的async改个名称,因为async ...

  5. centos8输入正确账号和密码登录报错

    1.现象 考虑安全因素,想设置"限制登录失败次数并锁定",便在网上找了教程,结果找到是centos7的设置方式,centos8和centos7设置是有差异的,结果导致输入正确的账号 ...

  6. ShareSDK新浪微博登录时报错 (21322) error:redirect_uri_mismatch

    项目中ShareSDK 新浪微博授权登录一直失败,错误码21322,页面出现报错信息.类似于下方的图片中的信息 仔细检查发现各种配置也没有问题,也是按照ShareSDK推荐的配置方案 如果到此授权登录 ...

  7. 在配置SSH免密登录时报错:/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/root/.pub': 没有那个文件或目录

    问题 [root@hadoop1 sbin]# ssh-copy-id hadoop1/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/roo ...

  8. Dubbo调用时报错Invalid token Forbid invoke remote service interface

    dubbo开启token服务后,使用集群容错策略为FailoverClusterInvoker,当出现服务调用失败进行转移,重试其它服务器时,会出现token invalid错误,provider会拒 ...

  9. eclipse 项目导入时报错invalid project description

    最近从网络上下载一个开源框架Demo示例,使用Eclipse导入该项目,报错:invalid project description. 经百度后,得知项目文件夹下,.project文件上项目名称必须保 ...

最新文章

  1. 在Windows Azure公有云环境部署企业应用
  2. freebsd 下安装桌面
  3. Android7.1 Presentation双屏异显原理分析
  4. 庖丁解牛看委托和事件(续)
  5. ajax alert表单,jQuery AJAX Post alert()不被调用
  6. vue 代理重定向_关于vue-router,路由重定向的使用分析
  7. 转:利用深度学习方法进行情感分析以及在海航舆情云平台的实践
  8. 一图看懂软件缺陷检查涉及的内容
  9. lc300.最长递增子序列
  10. 从0到1开发自动化测试框架(硬货太多,建议阅读)
  11. 一致代价搜索_58搜索效率优化平台建设实践
  12. 向工程腐化开炮 | proguard治理
  13. pycharm条件判断
  14. nas家庭服务器是无线连接吗,NAS家庭存储服务器搭建需要注意哪些问题?(上)...
  15. criterion of IMAP4.search 限制规范
  16. 贴片功率电感封装尺寸与性能
  17. CNN误差反传时旋转卷积核的简明分析
  18. [CVE-2021-1732] win32k内核提权漏洞分析
  19. JavaWeb-HTML常用标签了解(一)
  20. ASEMI代理Infineon英飞凌IPB60R099CP原厂MOS管

热门文章

  1. win7开机弹计算机,win7开机弹出Windows Installer窗口的解决方法
  2. 现代密码学期末复习26问
  3. 局域网内配置可访问mysql数据库
  4. win7计算机怎样共享的打印机,两台win7电脑如何共享打印机
  5. 最小二乘的应用1-不相容方程组
  6. 使用h5 canvas绘制圆形进度条
  7. 64位系统和32位系统的区别
  8. 基于matlab的车牌识别系统设计,基于MATLAB的车牌识别系统设计
  9. pytorch 报告bug: Assertion idx_dim >= 0 idx_dim < index_size “index out of bounds“
  10. Windows如何使文件显示扩展名