登录 QC 后台site administration,如下图点击“LDAP Import Settings”。这个设置主要是在qc里面设置要与LDAP集成的各项参数用来从LDAP server导出用户到QC中。
在下图中我们要输入LDAP的URL基本格式为:
如果是非加密访问:ldap://<ldap_server>:389
如果是加密访问: ldaps://<ldap_server>:636
对于有些LDAP服务器不开放匿名访问,这个时候我们需要输入访问的用户名和密码,如果开放匿名访问我们就可以选择匿名访问。
当设置好URL和认证用户信息以后,我们可以点击“Test Connection”来测试设置是否正确,如果正确则会出现如下成功提示框。
在下一步中我们就要设置过滤条件,这个根据LDAP的目录结构来设置过滤条件,基本原则是越top的目录越放在后面。默认情况下,是将整个目录结构全部显示出来。下图所示我们过滤到了人(people)这一层。如果组织LDAP用户比较少的话我们就不用设置过滤条件(用默认的),当用户信息量非常多的时候设置过滤条件就显得非常的重要,否则进行导入操作就需要花费很长的时间,甚至会Timeout。
设置好filter后可以点击“Advanced…”到下面这一非常关键步骤,“Username”字段必须和LDAP server上唯一标示用户的字段(这里是uid)相对应,如果不清楚该填什么请咨询LDAP管理员或者借助第三方的工具(比如LDAP Browser)来查看。
2. 导入用户
当我们设置好导入用户的各项参数后,我们就可以点击如下按钮开始导入用户信息到QC中。
从如下图中我们可以看到QC从LDAPServer那边将符合条件的用户列表给我们显示出来,我们可以选中将要导入的用户(勾选)然后点击Import按钮导入用户。如果将要导入的用户在QC里面已经存在,QC给我们相应的选择(update/rename/skip)来解决具体的冲突。
3. 设置认证方式
如果用户都成功导入到QC以后,我们就可以改变整个QC用户的登录认证方式,点击下图所示的“AuthenticationSettings”按钮。
在如下的图示中我们就可以选择让用户登陆QC 的时候用什么认证方式。默认情况下是“Quality Center”模式,如果确实需要和LDAP集成,我们可以选择第二个选项并且填入LDAP的URL。
当我们将QC的认证方式改成LDAP模式后,在如下图中我们看到刚刚导入的用户具体信息中多了“DomainAuthentication”字段,里面填的就是该用户在LDAP Server端的信息。完成以上步骤后,QC就和LDAP集成起来了。所有的用户再登陆QC就必须使用LDAP的账号和密码。
4. 注意事项
前面的步骤我们简单的说明了如何将LDAP和QC集成使用,在实际操作过程中我们还会遇到很多的问题,下面我列出了两个常见的问题及其解决办法。
a> Q: 修改QC认证方式后所有的用户都不能登陆QC(包括Project 和site Administration)
A: 出现这个问题主要有两方面的原因,其一,LDAP设置没有设对,详细情况请参见第三步;其二,如果单单是无法进入Site Administration, 那是因为没有将具体的从LDAP导入的用户设置成SiteAdministrator。解决的办法如下:
Step1: 用system帐户登陆QC数据库,执行如下SQL 语句将QC认证方式改回到QC自身认证方式
update qcsiteadmin_db.paramst set t.param_value='QualityCenter' where t.param_name='authentication';
commit;
Step2:用原来的Site Administrator 登录QC后台重新检查并且设置相关参数
b> Q:设置好filter后,在导入用户的时候,每个用户前面没有checkbox可供勾选。
A: 出现这个问题的原因是在设置如下图“User Name” 字段mapping的时候和LDAPServer端标示用户的字段不匹配所致,具体的解决办法是找LDAP管理员帮忙将正确的自端填入重新导入即可。