温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

代码审查Collaborator教程:单点登录——通过SAML配置单点登录(下)

发布时间:2020-07-19 17:19:46 来源:网络 阅读:261 作者:wx5d39183e901c5 栏目:编程语言

Collaborator是一款功能全面的代码审查工具。代码审查可以为开发测试人员和管理者提供帮助,生产出高质量的代码。团队可以用它在一个透明、共同的框架中进行同行代码审查、用户示例和测试计划的编辑。喜欢的朋友可以下载Collaborator试一试哦~

本篇文章介绍如何使用安全声明标记语言(SAML)协议在SSO服务器和Collaborator之间建立单点登录。由于这一教程内容较多,前一篇文章介绍了上半部分的内容(点击这里查看),现在是后面部分内容~

配置Collaborator服务器

1、在浏览器中打开Collaborator登录页面,以管理员身份登录Collaborator。

2、在Collaborator中,转到管理员>单点登录

3、在New SSO Configuration部分中,选择SAML SSO配置类型,然后单击Create。这将显示配置设置。

代码审查Collaborator教程:单点登录——通过SAML配置单点登录(下)

4、指定设置值:

服务提供者

预期接收SAML消息的实体的URL。在我们的示例中,这将是Collaborator服务器的URL。

例如:https://yourcollabserver.com。

注意:您的Collaborator服务器必须可供SSO服务器访问。配置防火墙或启用隧道连接以执行此操作。

SSO登录端点URL

如果尚未建立会话,则是户重定向单点登录过程的URL。

这应该是OneLogin服务器上Collaborator SAML Connector应用程序的SAML 2.0端点(HTTP)设置的值。

SSO注销端点URL

用于重定向用户以进行单一注销过程的URL。

这应该是OneLogin服务器上Collaborator SAML Connector应用程序的SLO端点(HTTP)设置的值。

X.509证书

在SSO服务器和Collaborator服务器之间建立信任的公共证书。

这应该是OneLogin服务器上Collaborator SAML Connector应用程序的X.509证书设置的值。

要复制X.509证书,请单击“查看详细信息”,然后单击“复制到剪贴板”图标。

SAML NameIDPolicy格式

指定NameIDPolicy身份验证请求中参数的格式。

启用AD / LDAP查找指定Collaborator是否应从LDAP / Active Directory检索组中的用户成员身份。请参阅将用户组成员身份与LDAP / Active Directory同步。
用户名参数

定义包含LDAP用户名的SAML响应参数的名称。请参阅将用户组成员身份与LDAP / Active 

如果未指定参数名称,或者参数返回空值,则不执行同步。

5、指定值后,单击“保存”。这将创建SAML SSO配置。

6、如果您有多个配置,请按“激活”将当前配置标记为活动。

7、将Admin单点登录屏幕滚动到单点登录(SSO)状态部分,然后将Enable单点登录设置更改为Yes

现在,Collaborator和单点登录服务器之间的集成已配置并正在运行。登录服务器将处理进一步登录Collaborator服务器的尝试。

将用户组成员资格与LDAP / Active Directory同步

使用单点登录服务器管理用户时,您还可以在Collaborator和LDAP目录或活动目录之间配置用户和组同步。在这种情况下,Collaborator将执行以下操作:

1、用户登录时,登录服务器会发送带有一些预配置参数的SAML响应。

2、Collaborator接收响应,提取保存LDAP用户名的参数,并将此用户名发送到LDAP目录或活动目录。

3、LDAP目录或活动目录搜索此用户所属的组,并将其返回到Collaborator

4、Collaborator检查指定的用户和组是否存在,如果需要则创建它们,并将用户添加到组中。

5、Collaborator服务器将用户登录。

LDAP / AD同步的配置

要通过LDAP或活动目录启用组成员资格的同步,您需要执行以下操作:

1、在用户信息部分中选择/创建SAML断言参数,用于存储用户的用户名。这可以是任何现有参数,如NameID、FirstName或LastName,或某些专用参数。

2、修改Collaborator服务器的Root.xml(<Collaborator Server> /tomcat/conf/Catalina/localhost/ROOT.xml)以使用Combined Realm元素:

<Realm className="org.apache.catalina.realm.CombinedRealm" >
  <Realm allRolesMode="strictAuthOnly"
    className="org.apache.catalina.realm.DataSourceRealm"
    dataSourceName="/jdbc/collabserver"
    localDataSource="true"
    roleNameCol="user_admin"
    userCredCol="user_password"
    userNameCol="user_login"
    userRoleTable="user"
    userTable="user">
   <CredentialHandler
    className="org.apache.catalina.realm.MessageDigestCredentialHandler"
    algorithm="md5"
   />
</Realm>

<Realm allRolesMode="strictAuthOnly"
    className="org.apache.catalina.realm.JNDIRealm"
    connectionURL="ldap://ldap.example.com:389"
    userPattern="uid={0},dc=example,dc=com"
    roleBase="dc=example,dc=com"
    roleSearch="(&(objectClass=groupOfUniqueNames)(uniqueMember={0}))"
    connectionName="cn=read-only-admin,dc=example,dc=com"
    connectionPassword="password"
  />
</Realm>

roleSearch上面的参数定义了用于标识组中用户成员身份的模式。它使用标准的LDAP查询格式语法。

3、验证collaborator-authentication参数是否与常规身份验证一样为真:

<Parameter description="Is the Collaborator database used for authentication?" name="collaborator-authentication" override="false" value="true"/>

4、在ADMIN> General> SSO选项卡页面中,将Enable LDAP查找设置为“Yes”,并在Username参数字段中指定包含LDAP用户名的SAML断言参数的名称。

LDAP / AD同步的技术细节

对于映射组中的用户成员身份,Collaborator使用从LDAP或AD检索的组的完全限定域名(FQDN)。它会检查某些现有用户组是否具有匹配的FQDN,并在成功时将用户添加到该组。否则,它会创建一个新组并将用户添加到新组。

要命名新组,Collaborator使用组的完全限定域名(FQDN)的第一个条目。例如,具有“ ou=ccusers,dc=example,dc=com”FQDN 的组将具有ccusers标题。如果某个其他组已经具有相同的标题,则Collaborator会将序号附加到组标题:ccusers1、ccusers2依此类推。

每次登录时,Collaborator都会检查通过LDAP或Active Directory同步创建的现有组,并实现这些组中的用户成员身份。此类算法允许在Collaborator和LDAP或Active Directory之间保持一致性。

故障排除

如果您遇到单点登录身份验证问题而无法登录Collaborator服务器(错误的重定向URL、无法以管理员身份登录等),则可以通过-Dcom.smartbear.server.sso.disable=true Java VM选项禁用SAML单点登录身份验证。

OneLogin服务器的已知问题

当用户从OneLogin服务器注销时,他们仍然保持登录Collaborator服务器。出于某种原因,当用户直接从OneLogin服务器注销时,OneLogin服务器不会触发Collaborator SLO端点。但是,当用户从Collaborator服务器注销时,它们将从Collaborator服务器和OneLogin服务器注销。

通过SAML配置单点登录教程现在结束了,其他单点登录教程请关注后续内容~


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI