使用LDAP进行系统验证的一种方法

此博客展示了一段Java代码,实现了AD(Active Directory)的登录验证功能。定义了AuthForAD类,其中login方法接收主机名、端口、用户名和密码作为参数,通过LDAPConnection进行连接尝试,根据连接结果返回登录是否成功的布尔值。

/*
 * 创建日期 2004-7-3
 *
 * 更改所生成文件模板为
 * 窗口 > 首选项 > Java > 代码生成 > 代码和注释
 */
package com.eastfreeman.auth;


import netscape.ldap.*;

/**
 * @author eastfreeman
 *
 * 更改所生成类型注释的模板为
 * 窗口 > 首选项 > Java > 代码生成 > 代码和注释
 */
public class AuthForAD {


public static boolean login(String hostname,int port,String username,String password)throws Exception{
  boolean flag = false;
    //boolean flag=false;
    LDAPConnection ld = null;
    ld = new LDAPConnection();
    String HOSTNAME = hostname;
    int PORT = port;
   
    String ENTRYDNtest="cn="+username+",cn=Users,dc=domain,dc=local";
      try{
        
      ld.connect(HOSTNAME,PORT,ENTRYDNtest,password);
      flag=true;
     
      }catch(LDAPException e){
      flag=false;  
      }
   /* Done, so disconnect */
    if ( (ld != null) && ld.isConnected()) {
       try {
        ld.disconnect();
       } catch ( LDAPException e ) {
       System.out.println( "Error: " + e.toString() );
       }
    }
    return flag;
     
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值