gpt4 book ai didi

java - 如何在 Spring Boot 中从 Active Directory LDAP 服务器获取所有组用户?

转载 作者:太空宇宙 更新时间:2023-11-04 09:38:10 25 4
gpt4 key购买 nike

我正在尝试从 Active Directory LDAP 服务器检索所有组和相应用户。

有人可以帮忙提供示例代码吗?

最佳答案

package test;

import java.util.List;

import com.unboundid.ldap.sdk.LDAPConnection;
import com.unboundid.ldap.sdk.LDAPException;
import com.unboundid.ldap.sdk.LDAPSearchException;
import com.unboundid.ldap.sdk.SearchRequest;
import com.unboundid.ldap.sdk.SearchResult;
import com.unboundid.ldap.sdk.SearchResultEntry;
import com.unboundid.ldap.sdk.SearchScope;

public class Test2 {


public static void main(String[] args) {

try {
List<SearchResultEntry> usersFromLdap = getUsersFromLdap();
System.out.println(usersFromLdap);
} catch (LDAPException e) {
//TODO handle exception
}

}

public static List<SearchResultEntry> getUsersFromLdap() throws LDAPException, LDAPSearchException{
String searchBaseDN = "dc=your-domain,dc=com"; //your-domain.com
String searchFilter = "(&(objectClass=user)(sn=*))"; //see e.g. https://confluence.atlassian.com/kb/how-to-write-ldap-search-filters-792496933.html


LDAPConnection connection = new LDAPConnection("host.your-domain.com", 389);
try {
connection.bind("yourLdapUser", "YourLdapPassword");
SearchRequest request = new SearchRequest(searchBaseDN, SearchScope.SUB, searchFilter);
request.setSizeLimit(0);
SearchResult searchResult = connection.search(request);

List<SearchResultEntry> result = searchResult.getSearchEntries();
return result;
} finally {
if (connection != null) {
connection.close();
}
}
}

}

关于java - 如何在 Spring Boot 中从 Active Directory LDAP 服务器获取所有组用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56250142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com