183 - LDAP的属性介绍

Posted 分享牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了183 - LDAP的属性介绍相关的知识,希望对你有一定的参考价值。

以下属性可以设置org.flowable.ldap.LDAPConfiguration:
.LDAP配置属性

属性名称描述类型默认值
服务器可以到达LDAP系统的服务器。例如ldap:// localhost:33389
港口运行LDAP系统的端口INT
用户用于连接到LDAP系统的用户标识
密码用于连接到LDAP系统的密码
InitialContextFactory用于连接到LDAP系统的InitialContextFactory名称com.sun.jndi.ldap.LdapCtxFactory
securityAuthentication用于连接到LDAP系统的java.naming.security.authentication属性的值简单
customConnectionParameters允许设置所有没有专用setter的LDAP连接参数。有关自定义属性,请参阅http://docs.oracle.com/javase/tutorial/jndi/ldap/jndi.html。这些属性例如用于配置连接池,特定的安全设置等。当创建与LDAP系统的连接时将提供所有提供的参数。Map <String,String>
baseDn用于启动用户和组搜索的基本专有名称(DN)
userBaseDn用于搜索用户的基本专有名称(DN)开始。如果没有提供,baseDn(见上)将被使用
groupBaseDn从中开始搜索组的基本专有名称(DN)。如果没有提供,baseDn(见上)将被使用
searchTimeLimit以毫秒为单位在LDAP中执行搜索时使用的超时一小时
queryUserByUserId由userId搜索用户时执行的查询。例如:(&(objectClass =inetOrgPerson)(uid = 0))在这里,将返回LDAP中具有inetOrgPerson类和具有匹配的uid属性值的所有对象。如示例所示,通过使用0注入用户标识。如果单独设置查询对于您的特定LDAP设置是不够的,您可以插入一个不同的LDAPQueryBuilder,这允许更多的定制,而不仅仅是查询。
queryUserByFullNameLike通过全名搜索用户时执行的查询。例如:(&(objectClass =inetOrgPerson)((0 = 1)(2 = 3)))将返回LDAP中具有inetOrgPerson类的所有对象以及具有匹配的名和姓值的对象。请注意,0将注入firstNameAttribute(如上定义),1和3搜索文本,2注入lastNameAttribute。如果单独设置查询对于您的特定LDAP设置是不够的,您可以插入一个不同的LDAPQueryBuilder,这允许更多的定制,而不仅仅是查询。
queryAllUsers在没有过滤器的情况下搜索用户时执行的查询。例如:(objectClass =inetOrgPerson)在这里,将返回LDAP中具有inetOrgPerson类的所有对象。
queryGroupsForUser搜索特定用户的组时执行的查询。例如:(&(objectClass =groupOfUniqueNames)(uniqueMember = 0))这里,返回具有类groupOfUniqueNames的 LDAP中的所有对象,并且提供的DN(与用户的DN匹配)是uniqueMember。如示例中所示,通过使用0注入用户标识如果单独设置查询对于您的特定LDAP设置而言不足,则可以选择插入不同的LDAPQueryBuilder,这允许比仅查询更多的定制。
queryAllGroups在没有过滤器的组上搜索时执行的查询。例如:(objectClass =groupOfUniqueNames)在这里,将返回LDAP中具有类groupOfUniqueNames的所有对象。
userIdAttribute与用户标识匹配的属性的名称。查找User对象时使用此属性,并完成LDAP对象和Flowable用户对象之间的映射。
userFirstNameAttribute与用户名相匹配的属性的名称。查找User对象时使用此属性,并完成LDAP对象和Flowable用户对象之间的映射。
userLastNameAttribute与用户姓氏匹配的属性的名称。查找User对象时使用此属性,并完成LDAP对象和Flowable用户对象之间的映射。
groupIdAttribute与组ID相匹配的属性的名称。查找Group对象时使用此属性,LDAP对象和Flowable组对象之间的映射已完成。
groupNameAttribute与组名称匹配的属性的名称。查找Group对象时使用此属性,LDAP对象和Flowable组对象之间的映射已完成。
groupTypeAttribute与组类型匹配的属性的名称。查找Group对象时使用此属性,LDAP对象和Flowable组对象之间的映射已完成。

以下属性是当您想要自定义默认行为或引入组缓存时:

高级属性

属性名称描述类型默认值
ldapUserManagerFactory如果默认实现不适合,请设置LDAPUserManagerFactory的自定义实现。LDAPUserManagerFactory的实例
ldapGroupManagerFactory如果默认实现不适合,请设置LDAPGroupManagerFactory的自定义实现。LDAPGroupManagerFactory实例
ldapMemberShipManagerFactory如果默认实现不适合,请设置LDAPMembershipManagerFactory的自定义实现。请注意,这是非常不可能的,因为成员资格通常在LDAP系统中进行管理。LDAPMembershipManagerFactory的一个实例
ldapQueryBuilder如果默认实现不适合,请设置自定义查询生成器。当LDAPUserManager或LDAPGroupManage对LDAP系统进行实际查询时,使用LDAPQueryBuilder实例。默认实现使用在此实例上设置的属性,如queryGroupsForUser和queryUserByIdorg.flowable.ldap.LDAPQueryBuilder的一个实例
groupCacheSize允许设置组缓存的大小。这是一个LRU缓存,为用户缓存组,从而避免每次需要知道用户组时碰到LDAP系统。如果值小于零,缓存将不会被实例化。默认情况下设置为-1,所以没有缓存完成。INT-1
groupCacheExpirationTime以毫秒为单位设置组缓存的到期时间。当获取特定用户的组时,如果组缓存存在,组将在此属性中设置的时间内存储在此缓存中。也就是说,当组在00:00获取并且到期时间是30分钟时,在00:30之后对该用户的组的任何获取将不会从缓存中获得,而是从LDAP系统中再次获取。同样,在00:00 - 00:30之间完成的所有用户组的获取都将来自缓存。一小时

注意使用Active Directory时:人们已经报告说,对于Active Directory,InitialDirContext需要设置为Context.REFERRAL。如上所述,这可以
通过customConnectionParameters图传递。

上面文章来自盘古BPM研究院:http://vue.pangubpm.com/
文章翻译提交:https://github.com/qiudaoke/flowable-userguide
了解更多文章可以关注微信公众号:

以上是关于183 - LDAP的属性介绍的主要内容,如果未能解决你的问题,请参考以下文章

如何从组的 LDAP 搜索中获取用户给定名称属性的列表?

AD用户属性对照表

LDAP(一)之概念原理介绍

Linux发行版·常见Linux系统下载

LDAP是啥?

如何通过Java中的LDAP获取AD组的所有成员