1. 安装准备
已安装Jira、confluence
2. 安装包下载
wget https://www.atlassian.com/software/crowd/downloads/binary/atlassian-crowd-3.2.1.tar.gz
3. 安装Crowd
3.1 解压
tar zxvf atlassian-crowd-3.2.1.tar.gz -C /home/atlassian/crowd
3.2 修改配置文件
vim /home/atlassian/crowd/crowd-webapp/WEB-INF/classes/crowd-init.properties
A. 首先取消代码注释,并修改路径,可自定义路径 crowd.home=/home/atlassian/crowd-home
B. 根据上边配置的路径,新建这个路径目录
mkdir -p /home/atlassian/crowd-home
3.3 放入msyql驱动jar包到crowd项目目录下
cp mysql-connector-java-5.1.39-bin.jar /home/atlassian/crowd/crowd-webapp/WEB-INF/lib/
3.4 把crowd项目目录下的atlassian-extras-3.2.jar拿回来,并改名为atlassian-extras-2.6.jar (在window系统下操作)
运行破解程序
java -jar crowd_keygen.jar
输入Name值,并点击【.patch】,在弹出的新窗口中选择atlassian-extras-2.6.jar文件。 把新生成的atlassian-extras-2.6.jar文件放回到项目的lib目录中去。
启动crowd
sh start_crowd.sh
**3.5 通过浏览器访问http://127.0.0.1:8095 来配置crowd
记录这个页面的server Id,把这个id填入到破解工具中,生成key。 并把生成的key填写到网页中
初始化Crowd
配置crowd和mysql的连接
点击【Continue】
配置【Internal directory】
备注: 这里的内部目录是作为Jira和Confluence的通信目录,后边会用到!
配置【管理员】
配置【综合应用】页
恭喜您,配置完成
4.基于Crowd实现Jira和Confluence的单点登录
4.1 crowd中创建组、用户、分配用户到组
a. 登录crowd控制台后,点击创建组
b. 新创建组: jira-users, jira-developers, jira-administrators,confluence-users, confluence-administrators
c. 创建两个用户:jiraadmin、 confluenceadmin
d. 用户分配到相应组
在jira-administrators组中添加jiraadmin
在confluence-administrators组中添加confluenceadmin
e. 导入已有的Jira用户
不管 JIRA 是否已经创建过用户和组,这里都需要导入一遍,因为JIRA系统管理员和默认的组需要导入过来使用不过得注意,导入时应当选择刚刚创建的internal Directory(内部目录):xxxxx
![]()
备注:这里会把jira中的用户和组(jira-administrators, jira-software-users)同步过来, 现在一定要把导入过来的用户分配到相对应的组里。
f. 创建Jira Application
![]()
![]()
![]()
![]()
4.2 配置crowd和jira的通信
以管理员身份登录Jira http://10.10.102.6:8080
a. 添加 Crowd Directory
b. 选择 Atlassian 人群
c. 填写Atlassian Crowd服务器相关信息
![]()
d. 点击【测试设置】,可以看到连接测试成功字样,然后点击【测试并保存】就添加好了
e. 点击【箭头】,把crowd server调整到第一位
4.2 配置Crowd的SSO认证
进入jira程序目录,修改seraph-config.xml
vim /jira/atlassian-jira/WEB-INF/classes/seraph-config.xml
#找到这一行并注释掉
<!--<authenticator class="com.atlassian.jira.security.login.JiraSeraphAuthenticator"/>-->
# 找到这一行,并打开注释
<authenticator class="com.atlassian.jira.security.login.SSOSeraphAuthenticator"/>
# 配置 crowd.properties 文件, 首先从 crowd 安装目录下 copy 到 jira 的 classes 目录
cp /atlassian-crowd-3.2.1/client/conf/crowd.properties /atlassian-jira/WEB-INF/classes
# 编辑 /atlassian-jira/WEB-INF/classes/crowd.properties 文件
# 输入 crowd 里设置的 jira application 参数, 同一台服务器可用 localhost,其他默认
$ vim atlassian-jira/WEB-INF/classes/crowd.properties
application.name = jira
application.password = jira
application.login.url = http://10.10.102.6:8080
crowd.server.url = http://10.10.102.6:8095/crowd/service/
crowd.base.url = http://10.10.102.6:8095/crowd/
session.isauthenticated = session.isauthenticated
session.tokenkey = session.tokenkey
session.validationinterval = 2
session.lastvalidation = session.lastvalidation
4.3 权限配置
JIRA6 及以下版本 可以通过: 【系统】 ->【全局权限】-> 【JIRA 用户】把指定的组加上【JIRA 用户】权限就可以登录 JIRA 了
JIRA7 全局权限里已经没有【JIRA 用户】权限了,需要在应用程序里配置: 【应用程序】->【应用程序访问权限】-> 把Crowd同步过来的组加到 JIRA Software 里就可以登录了
Crowd 里同步过来的的管理员组:jira-administrators 可以赋予【JIRA 管理员】权限,方便别人一起来管理 可以根据需求来决定是否赋予:【JIRA 系统管理员】最高权限
备注: 4.3的操作一定要做,否则如果重启服务后,会导致无法登录jira的情况
4.4 重启服务,并验证登录
重启 jira 和 crowd服务。验证是否可以登录jira
4.5 配置crowd和Confluence的通信
a. 在crowd中,新建application。 步骤和新建jira application一样。
b. 拷贝文件/crowd/atlassian-crowd-3.2.1/client/conf/crowd-ehcache.xml到/jira/WEB-INF/classes和/confluence/WEB-INF/classes下(不知道这个有没有用,先拷贝一下吧,流汗)
c. 按4.2的操作,在confluence中也做一遍
d. 在以前安装confluence时一定要选择用户托管给jira管理
e. 重启confluence
4.6 验证
在Crowd中的Jira和Confluence用户目录下创建与Crowd管理员同名用户,将该用户分配到confluence-administrators和jira-administrators组中,根据Jira和Confluence中设置的用户同步间隔时间,待用户自动同步后:
a. 用管理员帐号登录Crowd,登录成功
b. 在同一浏览器中录入Jira的主页,登录成功,如果是第一次登录,会进入个人信息设置的步骤。
c. 在同一浏览器中录入Confluence的主页,登录成功,如果是第一次登录,会进入个人信息设置的步骤。