...
字段名 | 类型 | 说明 |
c_id | varchar(255) | 用户ID |
c_type | varchar(255) | 类型(用户USER、用户组GROUP、角色ROLE,所有用户EVERYONE) |
c_is_descend | varchar(255) | 是否应用于子孙组用户(只对用户组生效) |
c_extend | longtext | 所选节点扩展内容(包含别名等信息) |
...
userPrincipalName 和 sAMAccountName
锚 UserPrincipalName 和 sAMAccountName UserPrincipalName 和 sAMAccountName
UserPrincipalName 和 sAMAccountName | |
UserPrincipalName 和 sAMAccountName |
UserPrincipalName userPrincipalName 和 sAMAccountName 是AD中用于标识用户对象的两种不同属性,区别如下:
- UserPrincipalName userPrincipalName 一般遵循电子邮件地址的格式,如user1@domain.com ,提供了一种与用户登录名相似的方式,便于用于以一种直观的方式登录到他们的账户,可以在林中的任何域中唯一标识一个用户,并且不强制要求用户的登录名与其电子邮件地址相同,也不直接关联到特定的NetBIOS域名,适合用于跨多个域的环境,也就是林中唯一。
- sAMAccountName 采用传统的NetBIOS名称格式,如DOMAIN\user1,一般用于兼容旧版本的Windows操作系统(如Windows NT),这个属性是每个用户账号必须拥有的,并且在同一个域中,必须是唯一的,而且有长度限制为20个字符。缺乏多域的支持,也就是域中唯一。
基于上述知识点,可只principal_prefix 和 principal_suffix 在 ad.properties中只需要配置其中一个即可
- principal_prefix:适用于 UserPrincipalName userPrincipalName 的方式登录到域。
- principal_suffix:适用于 sAMAccountName 的方式登录到域。
...
其中的sAMAcountName是当前域内的显示形式,因此不会增加DOMAIN\前缀,但是在JNDI中使用sAMAcountName登录时需要拼接DOMAIN\前缀,这个DOMAIN\可以在域的powersheel中执行命令 (Get-ADDomain).NetBIOSName 来获取。
参考
t_ext_ad_users(用于记录从AD中同步而来的用户)
字段名 | 类型 | 说明 |
c_id | varchar(255) | 用户ID |
c_name | varchar(255) | 用户名 |
c_alias | varchar(255) | 用户别名 |
c_group | varchar(255) | 用户所在组的ID |
c_extend | longtext | 扩展字段 |
问题排查
若是配置后发现不能正常使用,可以通过下面方法来获取错误信息,以便定位到问题原因。
...