jenkins VS openldap:身份验证失败但查找正常

问题描述 投票:0回答:1

我搜索了我的问题,发现完全相同的here没有答案,this没有帮助,也没有this,所以我在这里问。

我有一个开放的

(版本slapd(Ubuntu)(2018年5月22日13:54:12)$ buildd @ bos02-arm64-019:/build/openldap-AktVWV/openldap-2.4.42+dfsg/debian/build/servers/slapd)

在odroid hc1工作正常(我可以使用PAM_ldap在某些VM上进行身份验证)和jenkins(版本2.138)在我的本地机器上工作正常。

当我将jenkins配置为使用ldap对用户进行身份验证时,会出现问题。使用“测试ldap设置”按钮测试设置时,查找正常

查找用户查找:成功用户ID:测试用户Dn:“cn = test + gidNumber = 5556 + givenName = test + homeDirectory = / home / test + loginShell = / bin / bash + sn = test + uid = test,ou = users “,dc = home,dc = local用户显示名称:test用户电子邮件:[email protected] LD​​AP组成员身份:jenkins LDAP组查找:成功(1组)

但是登录失败并显示锁定警告消息

用户“test”将无法使用提供的密码登录。如果这是您自己的帐户,这意味着您将被锁定!您确定要保存此配置吗?

这是jenkins中的ldap配置:

Server: ldap://192.168.1.106
root DN: dc=home,dc=local
User search filter: uid={0}
Group membership: Search for LDAP groups containing user
Manager DN: cn=admin,dc=home,dc=local
Manager Password: ••••••••••
Display Name LDAP attribute: uid
Email Address LDAP attribute: mail

ldap的日志在jenkins登录失败时显示:

slapd [844]:conn = 1254 op = 0 do_bind:无效dn(“cn = test + gidNumber = 5556 + givenName = test + homeDirectory = / home / test + loginShell = / bin / bash + sn = test + uid = test ,OU =用户”,DC =家庭,DC =本地)

请注意ou = users后的双引号。它看起来像是一个串联问题吗?

由jenkins计算并发送到openldap的dn无效,应该是

("cn=test+gidNumber=5556+givenName=test+homeDirectory=/home/test+loginShell=/bin/bash+sn=test+uid=test,ou=users,dc=home,dc=local")

如果我使用Apache Directory Studio并使用无效的dn发出搜索,它会(显然)失败,如果我使用固定的dn进行搜索,搜索将返回预期的记录。

Openldap不允许匿名绑定,因此jenkins配置中的管理员凭据。

我试图添加/删除root dn(如果丢失则测试失败),搜索库(测试失败,如果填写或不填写),搜索组(相同)。

我很想解决这个问题。

我肯定错过了什么。

任何帮助表示赞赏。

编辑:添加测试用户ldif

dn: cn=test+gidNumber=5556+givenName=test+homeDirectory=/home/test+loginShel
 l=/bin/bash+sn=test+uid=test,ou=users,dc=home,dc=local
objectClass: simpleSecurityObject
objectClass: posixAccount
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: test
gidNumber: 5556
homeDirectory: /home/test
sn: test
uid: test
uidNumber: 5556
userPassword:: e1NTSEF9aCtmbmhraXVJSXp1MmRETUY4Zm4wK3NpYzVrUEF6VXJmWUhKUmc9P
 Q==
givenName: test
loginShell: /bin/bash
mail: [email protected]

Edit2:我安装了免费的神器。我能够成功添加ldap设置并使用相同的测试用户测试身份验证,并且不会对ldap配置或树进行任何更改。

jenkins ldap openldap
1个回答
0
投票

一直有同样的问题,直到我发现有效的密码哈希是与詹妮丝的SSHA。

© www.soinside.com 2019 - 2024. All rights reserved.