java - 如何使用 jndi 验证目录(LDAP 或 AD)中是否存在对象?

标签 java ldap jndi ldif

目前我们正在做这样的事情:

Attributes attributes = directoryConnection.find(filter, false);
if (attributes == null) {
    // then the object does not exist
}

我认为这效率不高,我们不需要检索整个属性(对于组对象,它们可能是几千个......我只想知道该对象是否存在)

有没有更好的方法来检查对象是否存在?我可以使用对象的 cn 或它的整个 dn

最佳答案

要确定“对象”是否存在,您必须搜索该对象。搜索请求至少包含:

  • 基础对象
  • 范围
  • 过滤
  • 请求的属性

加上一些其他可选参数,例如大小限制和时间限制等。搜索对象,请求属性 1.1,搜索响应将指示返回了多少条目。如果返回的条目数为零,则该对象不存在。欲了解更多信息,请参阅"LDAP: ldapsearch""LDAP: Programming Practices" .

关于java - 如何使用 jndi 验证目录(LDAP 或 AD)中是否存在对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8437853/

相关文章:

java - Oracle Java 存储函数 - ORA-00932 : inconsistent datatypes

java - 使用 Java 创建一个 Restful API,返回 JSON 对象作为响应

security - 防止 LDAP 注入(inject)

java - 关于我的错误,如何在 tomcat 中配置 jndi?

java - 使用自定义套接字工厂池化 LDAP 连接

java - 为什么当我访问 bean 时 @autowired 不起作用

java - 一旦输入 int <= 0,如何阻止二维 int 数组输出其值?

LDAP AD - 范围属性,如何使用?

ldap - 如何在 LDAP 中使用同一电子邮件地址创建多个联系人?

java - 解锁锁定的 Activity 目录帐户