Tag: openldap

将android连接到openLDAP服务器

我被分配了一个任务,从android连接到LDAP服务器。从android.Performvalidation过程我正在使用openLDAP。 我是全新的。任何人都可以帮我解决一些代码或演示代码,显示android连接LDAP服务器和validation。 该 Port no-389 SSL Port-636 IP Address-LGSPC3 username–>cn=name,cn=users,dc=mydeomain,dc=com serverlist-ldap://server1 先感谢您

如何使用UnboundID获取DN和密码

我需要一些关于UnboundID的帮助。 我听说这是一个很好的选择,但我并不习惯。 所以我需要创建一个LDAP监听器。 在这个监听器上,我应该能够捕获绑定请求(例如来自ldap浏览器)。 我想知道如何获取DN和密码。 这是我的LDAP监听器代码: public ResultCode CreateLdapServer () throws LDAPException { CannedResponseRequestHandler requestHandler = new CannedResponseRequestHandler(); LDAPListenerConfig config = new LDAPListenerConfig(4243, requestHandler); try { config.setListenAddress( InetAddress.getByName(“localhost”)); } catch (final Exception e) { System.err.println(“Unable to create the listen server.”); return ResultCode.PARAM_ERROR; } listener = new LDAPListener(config); try { listener.startListening(); System.out.println(“Serveur is listening …”); } […]

Java Tomcat LDAP身份validation

由于我使用Tomcat6作为servlet容器运行Java,因此我发现使用Tomcat JNDIRealmfunction是合适的,这样LDAP用户就可以登录我的站点而无需任何额外的工作。 我正在使用的LDAP服务器是Ubuntu上的OpenLDAP 。 除此之外,我还通过https连接使用基于表单的身份validation登录页面。 我通过LDAP找到了两个非常好的身份validation用户示例, 在这里和这里 ,它们都实现了我几乎实现的目标。 为何几乎实现? 当我尝试使用错误的凭据登录时,我已适当地发送到 , login-failed.html 。 当我的凭据良好并且我成功进行身份validation后,我开始为网站中的所有url获取403 。 我无法删除403错误(甚至不是登录页面!),除非我重新启动Tomcat。 我怀疑原因是因为我没有在领域中设置roles或正确设置其他配置文件。 为了简洁起见,我将相关的配置文件摘录放在pastebin上 : Tomcat server.xml域 相关的tomcat-users.xml部分 相关的web.xml部分 基本的LDAP结构 ,破折号表示树结构 请注意,基于Tomcat的auth工作正常,因为角色很容易附加到tomcat-users.xml的用户。 因此,我认为在成功通过身份validation后,从LDAP获取经过身份validation的用户角色是一个问题。 TL / DR 我在将Tomcat连接到LDAP身份validation时遇到配置问题。 用户数据正确获取,但不是用户的角色。 可根据要求提供LDAP日志消息;) 更新 :我在这里粘贴了LDAP数据。

通过ssl作为匿名用户进行Active Directory身份validation

我可以使用Spring-ldap为使用为ContextSource生命周期配置的用户validationActive Directory。 我的Spring xml配置看起来像lilke: 用于validation用户的java代码是: public boolean login(String username, String password) { AndFilter filter = new AndFilter(); this.ldapTemplate.setIgnorePartialResultException(true); // Active Directory doesn’t transparently handle referrals. This fixes that. filter.and(new EqualsFilter(“objectCategory”,”****”)); filter.and(new EqualsFilter(“objectClass”,”****”)); filter.and(new EqualsFilter(“sAMAccountName”, username)); return this.ldapTemplate.authenticate(“OU=myBaseOu,DC=xyz,DC=def”, filter.encode(), password); } 即使我没有在contextSource bean中设置userDn和password属性,同样适用于Linux打开Ldap v3。 我只需要配置这个xml,以便我可以作为匿名用户访问Active Directory(无需设置userDn和密码)。 此外,我需要通过SSLvalidation用户。 为此我用过 但我有例外: Exception in thread “main” org.springframework.ldap.CommunicationException: simple bind […]

使用Java从LDAP检索所有用户及其角色

我有一个Web应用程序。 对于LDAP,我使用的是Apache Directive Studio。 我想在我的应用程序中获取所有用户及其角色。 我可以使用以下代码获取特定信息。 import java.util.Properties; import javax.naming.Context; import javax.naming.NamingException; import javax.naming.directory.Attributes; import javax.naming.directory.DirContext; import javax.naming.directory.InitialDirContext; public class DirectorySample { public DirectorySample() { } public void doLookup() { Properties properties = new Properties(); properties.put(Context.INITIAL_CONTEXT_FACTORY, “com.sun.jndi.ldap.LdapCtxFactory”); properties.put(Context.PROVIDER_URL, “ldap://localhost:10389”); try { DirContext context = new InitialDirContext(properties); Attributes attrs = context.getAttributes(“dc=example,dc=com”); System.out.println(“ALL Data: ” + attrs.toString()); […]