历史版本20 :LDAP 认证 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述 编辑

在实际的应用中,用户在使用我们的数据决策系统时,越来越多的倾向于使用 LDAP 来进行多系统的用户统一认证,平台内置了用户认证功能。

LDAP 认证,用户登录的时候,平台拿用户名信息到设置的 LDAP 系统进行认证。

若 LDAP 系统认证失败,则平台判断认证失败;

若 LDAP 系统认证成功,但是对应的用户不存在于fs平台的用户中,则平台判断认证失败;

若 LDAP 系统认证成功,且对应的用户存在于fs平台的用户中,则平台判断认证成功,可进入 fs 平台、按照该用户在平台中的权限进行相应操作。

进入决策系统,点击管理系统>用户管理>设置标签,可以选择身份验证方式,如下图:

222

2. LDAP 认证编辑

选中LDAP认证,输入各个参数,如下图配置:

222

1)URL

URL 是登录 LDAP 服务器的入口,URL 由域名或 IP 与端口号组成,一般端口号默认为 389;写法 LDAP://域名或IP+端口号

2)检索位置

LDAP 是一个树结构存储数据的服务器,通过URL进入服务器,通过用户、密码验证后,进行检索相关登录信息。检索位置即存储该登录信息的位置,如上图写的方式为 LDAP 专用的“域名方式”。

默认勾选不将检索位置作为 BaseDN只写到根目录会自动检索其下面的子目录,但其效率比较低。

不勾选不将检索位置作为 BaseDN:从根目录一直写到子目录,不需要检索,速度会快一些。

3)认证方式

指定 LDAP 目录服务器所使用的认证类型。根据  LDAP 服务器的配置选择,一般认证方式选择 simple 就可以。

4)前后关系

初始上下文工厂的类名

一般选择 com.sun.jndi.ldap.LdapCtxFactory-对于基于 LDAP 服务器的目录服务.

5)转诊

根据  LDAP 服务器的配置选择,一般选择 follow 即可。

6)用户名后缀

用户名后缀可以添加也可以不添加,添加的时候,登录时也要添加上相应的域名,比如说 name@finereport.com,如果使用的后缀域名,登录不成功,则可以尝试不使用后缀设置。

7)管理员名称/密码

此处管理员名称并非指 LDAP 服务器的管理员名称,而是指具有 LDAP 服务器检索权限的用户。通过该用户进入 LDAP 服务器对检索位置进行登录信息检索来实现认证。通常这里采用的是域名/用户名的方式来进行识别。无论是 uid 或 cn 的方式都可以,但一般不使用 DN 域名的写法。

注:假如管理员名称处填写的并非 LDAP 服务器管理员名称,那建议加上用户所对应的后缀,如检索位置为 DC=fr,DC=test,DC=com,那么普通用户后缀为 test001@fr.test.com;

注:假如是 LDAP 服务器管理员名称,直接填写名称即可,如上述示例中的 administrator。建议域账号加入后缀,如 Administrator@fr.test.com

点击保存按钮,退出决策平台,需重新登录。

至此,LDAP 认证即配置完成了。

2.1 添加用户

在问题描述中讲述了,如果 LDAP 认证成功,但是平台中没有存储该用户,那么平台同样认证失败,那么配置好 LDAP 之后,还需要给数据决策系统添加用户,具体的添加方式有两种:

直接添加:详细请参照 手动添加用户

同步数据集添加:详细请参照 用户同步数据集

这里手动添加了一个用户:test001,如下图:

222

注:LDAP 认证配置用户时,不需要密码一项

2.2 效果测试

若 LDAP 系统认证成功,且对应的用户存在于fs平台的用户中,则平台判断认证成功,可进入 fs 平台、按照该用户在平台中的权限进行相应操作。

222

3. 注意事项编辑

3.1 场景描述

FineReport 由 9.0 升级到 10.0 之后,用户使用LDAP认证登录失败,登录页面显示报错信息username does not exist

3.2 场景分析

9.0 升级到 10.0 后 LDAP 登录认证逻辑发生了改变。

以用户名 User,LDAP 认证后缀 fr.com 为例对认证逻辑进行分析:

Version 9.0:首先将用户名 User 加上后缀 fr.com 检索平台是否存在该用户,然后进行 LDAP 认证流程;

Version 10.0:首先根据用户名 User 检索是否存在该用户,然后再加上后缀 fr.com 进行LDAP认证流程。

3.3 解决方案

方案一:将用户管理下 LDAP 配置页面的用户名后缀去掉不用,用户使用用户名@后缀名即可正常登录;

方案二:将每个用户的用户后缀名都去掉,用户使用用户名即可正常登录。