Jira 6.3.6使用openldap进行认证——方法二

简介:

上一篇中Jira通过openldap进行认证是第一种方式,在这一篇将介绍另外一种方式,两种方式的不同是由于配置中用户组模板配置和Membership Schema Settings的不同决定的,上一篇中用户组模板配置中Group object class使用的属性是postsixGroup,而这一次的配置中在用户组模板配置中Group object class使用的属性是groupOfNames,默认情况下,openldap在安装完成后是没有这一属性的,关于如何扩展该属性,请参考之前的一篇文章:CentOS 6.5安装Openldap添加memberof属性

1、首先,我把之前的ldap用户目录先禁用(主要是两个openldap的环境域名都是contoso.com,怕引起冲突),然后在用户管理下的用户目录中再添加一个目录,依然是ldap类型,不过名字叫openldap2。


wKiom1gBAxKzYfMLAAGqyXJHZjU532.jpg-wh_50

2、下面是配置的详细信息。

服务器设置和ldap schema,服务器信息还是根据实际情况进行填写。

wKioL1gBAxWDl3p5AAGr0ZJof74279.jpg-wh_50

LDAP Permissions(这次选择第二项)

wKioL1gBAxuz761yAAEidBEQ5P8126.jpg-wh_50

高级设置(基本上无须修改):

wKiom1gBAyGgXnVtAAHOUJj-mSY808.jpg-wh_50

User Schema Settings(这次用户对象类使用的是account属性):

wKiom1gBAyWC5Ur9AAF8sGziIX8236.jpg-wh_50

用户组模板设置(这一次组的对象类使用groupOfNames属性):

wKioL1gBAyrCpRQjAAEnEELH2hU221.jpg-wh_50

下面附上openldap的用户和组的数据:

[root@ldapserver ~]# ldapsearch -D cn=admin,dc=contoso,dc=com -W -b dc=contoso,dc=com

Enter LDAP Password: 

# extended LDIF

#

# LDAPv3

# base <dc=contoso,dc=com> with scope subtree

# filter: (objectclass=*)

# requesting: ALL

#


# contoso.com

dn: dc=contoso,dc=com

objectClass: dcObject

objectClass: organization

dc: contoso

o: contoso


# Users, contoso.com

dn: ou=Users,dc=contoso,dc=com

objectClass: organizationalUnit

ou: Users


# Groups, contoso.com

dn: ou=Groups,dc=contoso,dc=com

objectClass: organizationalUnit

ou: Groups


# test, Users, contoso.com

dn: uid=test,ou=Users,dc=contoso,dc=com

objectClass: account

uid: test


# testgroup, Groups, contoso.com

dn: cn=testgroup,ou=Groups,dc=contoso,dc=com

objectClass: groupOfNames

cn: testgroup

member: uid=test,ou=Users,dc=contoso,dc=com


# zhanglong, Users, contoso.com

dn: uid=zhanglong,ou=Users,dc=contoso,dc=com

uid: zhanglong

cn: zhanglong

objectClass: account

objectClass: posixAccount

objectClass: top

objectClass: shadowAccount

userPassword:

userPassword:: e1NTSEF9RmZPdDBBV1ltaCtCcVkzRG80YmFWOVgrdkh4c1kzQTFZbVZKTTNSaVN

 tRT0=

shadowLastChange: 17053

shadowMin: 0

shadowMax: 99999

shadowWarning: 7

loginShell: /bin/bash

uidNumber: 10001

gidNumber: 10001

homeDirectory: /home/zhanglong


# jira, Groups, contoso.com

dn: cn=jira,ou=Groups,dc=contoso,dc=com

objectClass: groupOfNames

objectClass: top

cn: jira

member: uid=zhanglong,ou=Users,dc=contoso,dc=com

member: uid=zhaohu,ou=Users,dc=contoso,dc=com

member: uid=wangchao,ou=Users,dc=contoso,dc=com

member: uid=mahan,ou=Users,dc=contoso,dc=com


# zhaohu, Users, contoso.com

dn: uid=zhaohu,ou=Users,dc=contoso,dc=com

uid: zhaohu

cn: zhaohu

objectClass: account

objectClass: posixAccount

objectClass: top

objectClass: shadowAccount

userPassword:

userPassword:: e1NTSEF9T1FORVU3Ym0rNUpHT3RFVGtvQlNDWmV5OEhWSVMyNWxlRFprY25WWVR

 UQT0=

shadowLastChange: 17053

shadowMin: 0

shadowMax: 99999

shadowWarning: 7

loginShell: /bin/bash

uidNumber: 10002

gidNumber: 10001

homeDirectory: /home/zhaohu


# wangchao, Users, contoso.com

dn: uid=wangchao,ou=Users,dc=contoso,dc=com

uid: wangchao

cn: wangchao

objectClass: account

objectClass: posixAccount

objectClass: top

objectClass: shadowAccount

userPassword:

userPassword:: e1NTSEF9K2JLVk42WnFmWlZyd1prcDhrMjVJV2RFVUtsc1ptVjVOVTA0VGpjMFY

 zWT0=

shadowLastChange: 17053

shadowMin: 0

shadowMax: 99999

shadowWarning: 7

loginShell: /bin/bash

uidNumber: 10003

gidNumber: 10001

homeDirectory: /home/wangchao


# mahan, Users, contoso.com

dn: uid=mahan,ou=Users,dc=contoso,dc=com

uid: mahan

cn: mahan

objectClass: account

objectClass: posixAccount

objectClass: top

objectClass: shadowAccount

userPassword:

userPassword:: e1NTSEF9OVBFY21nQVUvR1J1b0x3NWpYUmN0dElUQ2NaUU5qVmlRVFJIU0hndUw

 xQT0=

shadowLastChange: 17053

shadowMin: 0

shadowMax: 99999

shadowWarning: 7

loginShell: /bin/bash

uidNumber: 10004

gidNumber: 10001

homeDirectory: /home/mahan


# kff, Groups, contoso.com

dn: cn=kff,ou=Groups,dc=contoso,dc=com

objectClass: posixGroup

objectClass: top

cn: kff

gidNumber: 10001


# search result

search: 2

result: 0 Success


# numResponses: 12

# numEntries: 11

下面是openldap的树状结构:(注意jira组中member的属性,有多个成员的时候需要添加多个member属性以及对应的值

wKiom1gBCBqQ4R5tAAErde65odo090.jpg-wh_50

3、保存配置后,输入一个openldap账户进行测试。如果测试结果全部通过,就可以进行下一步,否则,就逐项进行检查并修改。

wKiom1gBAzKhrSX3AAHD7iLpynE411.jpg-wh_50

4、同步完成之后,在用户管理下的用户中可以看到同步过来的用户,目录都是openldap2。仔细查看不难发现,这些用户也都是在jira组,当然jira组是我在openldap中创建的组。根据之前的说法,如果选择了LDAP Permissions类型为Read-Only with local group,并设置了默认的用户组为jira-users,那同步过来的用户应该被添加到jira中的jira-users组的,但是这里并没有自动加入。

wKioL1gBAzjyAfteAAIICjQ48s8642.jpg-wh_50

5、这次我先不给ldap同步过来的组(jira组)添加jira项目的权限,使用其中的一个账户进行登录测试。

wKiom1gBAzyR8b3lAAERDleZpwE801.jpg-wh_50

6、登录成功,在我没有进行任何权限的添加的前提下,openldap的用户就可以登录jira了,这一点是跟之前不一样的。

wKioL1gBA0HAU9uXAAFOf6MlXtU887.jpg-wh_50

7、再次使用管理员登录,回到用户管理下的用户中查看,发现之前进行登录测试的openldap用户(mahan)的用户组已经多了一个jira-users组,说明openldap用户的确是自动加入了我们在LDAP Permissions中设置的默认组,但是前提是用户登录jira之后才会自动加入,不过最重要的用户可以登录jira的问题显然在这里就直接被解决了的。

wKiom1gBAw3AgdBTAAH_pVTDYJk582.jpg-wh_50



本文转自 jerry1111111 51CTO博客,原文链接:http://blog.51cto.com/jerry12356/1862096,如需转载请自行联系原作者

相关文章
|
API 数据安全/隐私保护
Argo CD接入LDAP认证或者gitea认证的方法
argocd默认是通过修改argocd-cm来添加账户的,添加完账户后,还需要使用argocd客户端命令去给账户设置密码,这肯定是比较麻烦的,为了方便使用,我们可以接入ldap认证或者gitea的oauth2认证。 这里我们主要写ldap认证,因为gitea没有提供组信息给dex,而ldap能返回组信息 ,gitea的接入会在文章的末尾进行简单介绍 关键词:argocd ldap dex
1890 1
Argo CD接入LDAP认证或者gitea认证的方法
ldap落地实战:svn集成ldap认证
上一篇文章我们介绍了LDAP的部署以及管理维护,那么如何接入LDAP实现账号统一认证呢?这篇文章将带你完成svn的接入验证 subversion集成openldap认证 系统环境:debian8.
2325 0
|
3月前
|
Shell 应用服务中间件 开发工具
LDAP学习笔记之八:openLDAP sudo权限
LDAP学习笔记之八:openLDAP sudo权限
|
11月前
|
Kubernetes 容器
006_部署ldap
006_部署ldap
94 0
|
Linux Apache PHP
LDAP的安装与使用
openldap的安装与使用
682 1
|
网络安全
Confluence 6 通过 SSL 连接 LDAP 和 Jira 应用等其他服务
这个页面的文档将会配置 SSL,而不是 Confluence 自己。Atlassian 将会支持 Confluence 使用这个配置,但是我们不能保证能够解决所有你在 SSL 中遇到的问题。
1326 0
ldap落地实战:gitlab集成openldap认证
上一篇文章介绍了svn集成openldap认证,版本控制除了svn外,git目前也被越来越多的开发者所喜爱,本文将介绍gitlab如何集成openldap实现账号认证 gitlab集成openldap认证 修改配置文件gitlab.
4026 0
|
安全 网络安全 开发工具
LDAP落地实战(三):GitLab集成OpenLDAP认证
上一篇文章介绍了svn集成OpenLDAP认证,版本控制除了svn外,git目前也被越来越多的开发者所喜爱,本文将介绍GitLab如何集成openldap实现账号认证 GitLab集成OpenLDAP认证 修改配置文件gitlab.
3042 0
|
数据安全/隐私保护 Apache
LDAP落地实战(二):SVN集成OpenLDAP认证
上一篇文章我们介绍了LDAP的部署以及管理维护,那么如何接入LDAP实现账号统一认证呢?这篇文章将带你完成svn的接入验证 subversion集成OpenLDAP认证 系统环境:debian8.
1948 0