- 浏览: 82994 次
- 性别:
- 来自: 上海
文章分类
最新评论
//建立LDAP服务器的连接
package com.prime.mypackage;
import java.io.File;
import java.io.FileInputStream;
import java.util.Hashtable;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class LdapQuery {
/*服务提供者*/
private static String CTX_FACTORY = "com.sun.jndi.ldap.LdapCtxFactory";
/*LDAP连接*/
private DirContext dirContext;
/*参数列表*/
private Hashtable enviroment;
/**
* 构造函数
*/
public LdapQuery() {
dirContext = null;
enviroment = new Hashtable();
}
public static void main(String[] args){
LdapQuery lp=new LdapQuery();
try{
lp.init("cn=orcladmin","abc123");
}catch(Exception e){
e.printStackTrace();
}
}
/**
* 读取配置文件,连接LDAP服务器
* @throws LdapException
*/
public DirContext init(String username, String password)
throws Exception {
try {
Properties config = new Properties();
File f = new File("C:/Projects/Java/ldap.property");
if (!f.exists()) {
throw new Exception("没发现配置文件");
}
FileInputStream configFile = new FileInputStream(f);
config.load(configFile);
String host = config.getProperty("host");
String port = config.getProperty("port");
configFile.close();
enviroment.put(Context.INITIAL_CONTEXT_FACTORY, CTX_FACTORY);
enviroment.put(Context.PROVIDER_URL, "ldap://" + host + ":" + port);
if (password != null) {
enviroment.put(Context.SECURITY_AUTHENTICATION, "simple");
enviroment.put(Context.SECURITY_PRINCIPAL, username);
enviroment.put(Context.SECURITY_CREDENTIALS, password);
}
dirContext = new InitialDirContext(enviroment);
if (dirContext != null) {
System.out.println("Connect");
return dirContext;
}
return null;
} catch (Exception e) {
throw new Exception("LdapQuery.init:" + e.toString());
}
}
}
//做第一个动作 add()
package com.prime.mypackage;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import javax.naming.directory.DirContext;
import java.util.Hashtable;
import java.util.Enumeration;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.SearchControls ;
import javax.naming.NamingEnumeration;
import javax.naming.directory.SearchResult;
import javax.naming.directory.Attributes ;
import javax.naming.directory.Attribute;
import javax.naming.directory.BasicAttributes;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.ModificationItem;
import java.lang.reflect.Method;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class LdapAction
{
DirContext ctx=null;
public static void main(String[] args)
{
LdapAction LA=new LdapAction();
LA.add();
}
public LdapAction()
{
LdapQuery query=new LdapQuery();
try{
ctx=query.init("cn=orcladmin","abc123");
}catch(Exception e)
{
e.printStackTrace();
}
}
public void add(){
try{
String newUserName = "test_add";
BasicAttributes attrs = new BasicAttributes();
BasicAttribute objclassSet = new BasicAttribute("objectclass");
BasicAttribute pass=new BasicAttribute("userpassword");
pass.add("123qweasd");
objclassSet.add("top");
objclassSet.add("person");
objclassSet.add("organizationalPerson");
objclassSet.add("inetOrgPerson");
objclassSet.add("orcluser");
objclassSet.add("orcluserV2");
attrs.put(pass);
attrs.put(objclassSet);
attrs.put("sn", newUserName);
attrs.put("uid", newUserName);
attrs.put("cn", newUserName);
ctx.createSubcontext("uid=" + newUserName+",cn=users,dc=dev,dc=daphne,dc=com,dc=cn", attrs);
}catch(Exception e){
System.out.println("Exception in add():"+e);
}
}
}
发表评论
-
SSO原理机制
2017-04-07 16:07 541一、单系统登录机制 1、http无状态协议 web ... -
Java开发规范
2017-03-16 10:45 585元数据起始 重要: 每次提交代码前,一定要使 ... -
java识别当前设备类型
2015-08-12 12:24 1655package com.tgb.util; impo ... -
JVM原理
2014-10-10 09:46 612JVM原理 JVM 原理解释 ... -
ldap java api
2013-11-11 10:41 2035从JDK5.0开始,对LDAP协议的数据访问操作就被集成在 ... -
java程序运行cmd命令
2011-12-06 10:48 1131public class Test { public st ... -
java正则表达式入门
2011-12-04 15:28 877java正则表达式入门 众所周知,在程 ... -
使用java技术将Excel表格内容导入mysql数据库
2011-09-24 20:22 10711、添加POI jar包到项目的lib目录下2、Exce ... -
Eclipse快捷键-方便查找
2011-09-02 00:27 675【Ct rl+T】 搜索当前接口的实现类 1. 【 ... -
JSP C标签
2010-12-22 14:13 1063核心标签库 它是JSTL中的核心库,为日常任务提供通用 ... -
JSP C标签
2010-12-22 13:52 1058从JSP 1.1规范开始,JSP就支持在JSP中使用自定 ... -
JSP EL语言
2010-12-21 11:15 757一、JSP EL语言定义 E L(Expre ... -
Myeclipse6.5下使用XFire开发WebService的简单例子
2010-12-18 18:22 896一,创建服务并发布: 1.新建一webservice项目(或 ... -
基于AXIS的web service项目环境搭建
2010-12-18 18:12 1509一.Web服务 Web服务是一种新型的Web应用程序。不同于 ... -
Web service是什么?
2010-11-28 19:41 710我认为,下一代互联网软件将建立在Web service(也 ... -
Java事务处理总结
2010-11-02 09:19 690一、什么是Java事务 通常的观念认为,事务仅与数据库相关。 ... -
Ubuntu安装JDK配置Tomcat服务
2010-10-15 15:43 1174Ubuntu安装JDK配置Tomcat服 ... -
MyEclipse 代码提示卡死之终极优化
2010-10-12 10:18 958大多数javaman在使用myeclipse的过程中都遇到过代 ... -
struts 线程安全问题
2010-09-28 16:28 952Struts Action的线程安全问题 文章分类:Java ... -
spring ioc与aop
2010-09-28 15:06 1059aop叫aspect oriented program,面向切 ...
相关推荐
`adldap2-laravel` 是一个专门为 Laravel 设计的 LDAP 集成包,它允许开发者轻松地将 Laravel 应用程序与 Active Directory 服务器集成,实现用户登录、权限控制等功能。 **1. Laravel 身份验证系统** Laravel ...
Java 使用 LDAP 修改 AD 域用户密码 本文将详细介绍如何使用 Java 语言通过 LDAP 协议修改 Windows Active Directory 域用户的密码。同时,本文也将对相关概念进行解释,以便读者更好地理解整个过程。 LDAP 概念 ...
在实际使用中,`shanghai-edu-ldap-test-tool-5896101` 这个文件可能是该工具的一个特定版本或发布包。下载并解压后,通常会包含源代码、可执行文件、文档和示例等内容。开发者可以通过阅读文档了解如何安装、配置和...
JAVA中使用LDAP进行用户认证 JAVA中使用LDAP进行用户认证是指在JAVA应用程序中使用轻量级目录访问协议(LDAP)来进行用户身份验证。LDAP是一种基于X.500标准的目录访问协议,但它更简单、更灵活,可以根据需要进行...
在IT行业中, Lightweight Directory Access Protocol (LDAP) 是一种用于存储和检索目录信息的标准协议,而Active Directory (AD) 是微软提供的目录服务,广泛应用于企业环境中进行用户身份验证和权限管理。Java和...
Python LDAP库提供了一种方便的方式来访问这些目录服务,允许开发人员执行搜索、添加、删除和修改目录条目的操作。 在使用`python_ldap-3.4.4-cp38-cp38-win_amd64.whl`之前,确保你已经安装了Python 3.8,并且拥有...
Python LDAP库提供了一个接口,允许开发者通过Python代码与LDAP服务器进行通信,执行如搜索、添加、删除、修改和绑定等操作。 3. **CP312**: 这部分表示该轮子文件是为Python 3.12版本编译的。Python的版本号由`cp`...
AD ldap java集成
在这篇文章中,我们将探讨使用 JAVA 实现 LDAP 的 AD 域免证书查询、修改、删除、新增、启用、禁用和修改密码的操作。 首先,让我们了解什么是 LDAP 和 AD 域。LDAP(Lightweight Directory Access Protocol)是一...
**LDAP(轻量级目录访问协议)是一种用于访问和管理分布式目录服务的协议,广泛应用于组织内部的身份验证、用户及资源管理。LdapAdmin是一款专为Windows操作系统设计的高效、稳定的LDAP管理工具,它允许管理员便捷地...
在调试工程的时候发现需要django-auth-ldap,但还依赖python_ldap包,在windows上装这些包费老鼻子劲,csdn上找呢又不全,收分还多贵的,因此找到了之后将python3.7-11的包都给大家提供,不好意思挣点分,因为有些...
Python LDAP库是一个强大的工具,用于在Python环境中与 Lightweight Directory Access Protocol (LDAP) 服务器进行交互。这个`python_ldap-3.1.0-cp36-wheel.zip`压缩包包含了适用于Python 3.6版本的Python LDAP库的...
spring-ldap-core-1.3.0.RELEASE.jar
使用内置的身份验证驱动程序,轻松地允许LDAP用户登录到您的应用程序并控制哪些用户可以通过和登录。 轻松导入和同步LDAP用户。 可以在首次登录时将用户导入数据库,也可以通过简单的php artisan adldap:import...
在本文中,我们将深入探讨如何使用Java通过Ldap与Active Directory (AD)域进行交互。首先,我们需要了解AD域是一个集中式服务,用于管理网络中的用户、计算机和其他资源的身份和权限。Ldap(轻量级目录访问协议)是...
该库提供了一组丰富的API,可以用来执行常见的LDAP操作,如搜索、添加、删除、修改和比较记录。 **WHL文件详解** .WHL文件是Python的Wheel格式,它是Python包索引(PyPI)上发布的一种预编译的二进制包。这种格式旨在...
Java 连接ldap需要驱动包,否则JDBC无法访问数据库(无法注册驱动),常用的是ldap-connector
Python LDAP库是一个用于Python的轻量级目录访问协议(LDAP)接口,它允许开发者与LDAP服务器进行交互,例如进行用户身份验证、数据检索或管理目录服务。`python_ldap-3.4.4-cp37-cp37m-win32.whl` 是这个库的一个...
python_ldap-3.3.1-cp37-cp37m-win_amd64