首页 > 解决方案 > 如何使用 UnboundID LDAP SDK 检查 LDAP 用户帐户是否在 Java 中过期

问题描述

我有一个可用的 LdapConnection 对象,可用于绑定和搜索,但我对 UnboundID LDAP SDK 还是很陌生,想知道是否有办法从 LDAP 搜索中找到有关用户帐户的信息:

我目前使用 LdapConnection 来搜索这样的用户名:

SearchResult searchResult = ldapConnection.search(configuration.sBase, scope, filter)

有没有办法可以使用此连接来查找过期/禁用的帐户?

所以看起来过期的用户是这样找到的:

(&(objectCategory=Person)(objectClass=User)(!accountExpires=0)(!accountExpires=9223372036854775807)) 

我可以用这个字符串做一个过滤器来搜索 ldap 并从 unboundID Ldap 返回所有具有 LdapConnection 对象的用户吗?

谢谢

标签: javaactive-directoryldapunboundid-ldap-sdk

解决方案


在 Active Directory 中,您可以使用属性:UserStatus,它是一个布尔值,如果为 true,则启用帐户,否则禁用,您还可以在创建新用户时设置 AccountExpires 属性,默认为 0,因此帐户永不过期,您如果您想要临时帐户,可以更改它。


推荐阅读