OpsAny从v1.3.1开始已经支持LDAP登录,可以对接openldap与WindowsAD,进行用户同步。许多朋友使用过程中可能由于配置的问题导致无法导入用户,下面将我的配置记录下来分享给大家做为一个参考使用。
LDAP配置
使用超管用户进入统一权限平台,在导航中找到平台设置,选择认证管理,即可进行LDAP配置
点击新建,选择OpenLDAP认证,点击确定进入下一步。
在此对域环境基本信息进行配置,这里的登录域填写你自己的域名称,在使用LDAP登录时需要使用,比如我配置的AD,登录时域就要输入AD
完成后点击下一步,进入连接设置,各字段填写如图所示:
- 连接地址:填写WindowsAd域控服务器地址,WindowsAD实际也是采用目录访问协议ldap,所以在这里需要以 ldap://开头加上服务器地址即可。
- 加密方式:根据自身服务器配置进行选择,一般都未进行加密配置。
- 根目录:即LDAP中的BaseDN,一般为配置WindowsAD时的根域名。
- 用户名:即有权限读取AD中所有数据的用户名
- 密码:对应的用户密码
字段设置,对应设置内容可以参考我的配置进行,大家也可以通过ldapadmin工具连接自己的WindowsAD进行查看。各字段填写如图所示:
字段说明:
字段名 | 字段值 | 说明 |
---|---|---|
拉取节点 | 按实际情况进行填写 | 即要从哪个OU中读取用户信息 |
用户对象类 | user | 对应AD中objectClass属性,可以使用的属性值有:user或person,建议默认使用user |
用户对象过滤 | (&(!(objectclass=computer))(objectclass=user)(userAccountControl=66048)) | 参考资料,查找(搜索)用户的条件,在此使用userAccountControl过滤了启用的用户,在不同版本的的WindowsAD中其值可能不一样,请自行通过ldapadmin工具查看。如无法同步用户,可以修改为 (&(!(objectclass=computer))(objectclass=user))进行测试 |
用户名字段 | sAMAccountName | 用于匹配用户名,在WindowsAD中建议使用sAMAccountName |
中文名字段 | name | |
邮箱字段 | ||
手机号字段 | telephoneNumber |
配置验证
- 配置完成后,回到认证管理界面,进行同步操作
- 进入用户管理查看用户是否已经同步到系统
问题排查思路
- 相信计算机
- 仔细仔细再仔细
- 检查拉取节点是否配置正确
- 排查日志
与此相关的日志路径默认为: /opt/opsany/saas/apps/logs/rbac