java调用AD域验证用户
在工作中,需要利用JAVA调用AD域验证用户。查询了许多资料后,希望这篇文章对也在学习这方面知识的同学有所帮助。
一、AD域简介
AD的全称是Active Directory:活动目录
域(Domain):
1)域是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是连接在域与域之间的桥梁。当一个域与其他域建立了信任关系后
2)两个域之间不但可以按需要相互进行管理,还可以跨网分配文件和打印机等设备资源,使不同的域之间实现网络资源的共享与管理,以及相互通信和数据传输。
所以使用AD域主要是为了方便于集中式管理。如果没有引入域的概念,那么公司系统管理员可能要进行大量的重复式工作,对每一台电脑进行配置权限等。当我们使用了域之后,系统管理员只需要在域控制器上进行一次设置就可以配置所有电脑了。
当然,引入域之后,计算机用户的权限会大大降低,因为系统管理员可以对用户权限进行设置,例如下载的软件、登录的网址,对于公司而言,这样可以提高员工工作效率,有利于提高公司业绩。(不然呢?想象QQ、微信都不能用了,谁还上班摸鱼啊-。-)
二、LDAP简介
LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。
LDAP的主要作用就是实现单点登录,在同一个域内,使用一套用户名和密码可以登录多个系统,减少用户使用难度,降低开发成本和对接成本。由于现在市场上大多数产品已经支持LDAP,所以开发难度大大降低。
三、java调用AD域验证用户
import java.util.Hashtable;
import javax.naming.AuthenticationException;
import javax.naming.Context;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class getADInfo {
public static void main(String[]<