jira接入LDAP

场景:
    之前介绍了jira 和confluence的账户结合,jira和confluence可以使用一个账户,有人员离职之后直接在jira吧用户禁用即可,一端操作,方便两端,但是随着公司人员越来越多,这样的方式已经不在适合这种了,来一个用户就需要去创建,对运维来说,这是重复的工作,提升不了任何效率,而且枯草无味。这里我们就可以使用ldap,jira和confluence都是支持ldap,ldap的好处,这里不阐述,下面来看看如何配置jira介入ldap。confluence还是接入jira,这样我们就只操作ladp和jira,简单省事。

问题点:
    由于在建立jira和confluence的时候还没有ldap,ldap是后期才接入的,所以这里就存在于怎么吧以前有jira登录的账户认证切换到ldap。而且不影响之前的文档,但是用户权限会影响,问题不大,可以添加。下面开始操作

1、进入jira用户管理页面

img

2、选择ldap,进入ldap配置页面

img
img

3、高级设置

img

4、配置用户模式

img

5、设置组模式

img

6、设置成员模式

这里ldap一定要存在与ladp的group里面
img

7、测试并保存

这里测试账户一定是ladp的账户
img

8、同步账户

img

9、用ladp账户登录测试

img

jira账户切换至ldap

jira配置ldap以后默认是本地账户和ldap是同时存在的,用户可以用以前的本地账户和ldap都登录,这里实现ldap登录,禁止本地登录。

前置条件

  • jira的本地账户和ldap的账户名称必须一样
  • 操作前请备份数据库
  • 用户邮箱保持一致
  • 密码无所谓,不需要统一

查看用户信息关联

登录jira的数据库。然后找到cwd_user表

cwd_user表

    jira的前台不能直接去更改,只有更改数据库,进入数据库,找到一张cwd_user的表,里面包含了所有用户的登录账号信息,其中有一个字段directory_id的,这个字段我们可以看到本地账户的id是1,ldap同步过来的账户是10001,如下图:
img

    继续看该表的credential字段,密码也有区别,本地账户是有一串加密后的字符串,ldap认证的是nopass,包括后面的external_id 也是有区别的,如下图
img

cwd_directory表

    在打开cwd_directory表,里面有两条数据,一个对应的是ldap,一个对应的本地,和cwd_user是对应的,如图:
img

修改数据库

    记住ldap目录的id,然后在cwd_user表里面删除ldap的相同账户的整条记录,因为要伪装原本系统自带的目录服务器,原来编辑的文件和内容为原先这个用户的id。修改directory_id 为ldap的id,还有一个需要修改的地方为CREDENTIAL的字段,把它修改为nopass。修改完成后需要重启jira,不重启不会生效,而且登录服务器还会报错。

    这里jira和confluence是做了关联的,jira修改以后,confluence也可以进行登录,无需在confluence在设置一次ldap;修改完成后,以前用户的管理员权限有问题,重新添加一次即可。不会影响其他的。设置文档,ldap权限要选择为只读,且为本地组。然后吧jia和confluence的普通组添加进去,否则用户进来没有权限

坚持原创技术分享,您的支持将鼓励我继续创作!
0%