使用AD域做登陆验证

这篇博客介绍了如何使用AD域进行登陆验证。AD域提供集中用户管理,通过域控制器实现批量设置,并且在代码中展示了如何在登陆时将用户名密码发送到AD域进行校验,以此确保安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        今天看代码看到登陆时使用了AD域验证的方式来验证用户名密码,故学习记录一下。

        AD域是用来集中管理用户的,比如我们电脑上就有一个域设置,他可以用来设置我们的电脑允许和不允许的操作,比如不能安装乱七八糟软件什么的。只需要在域控制器上进行一道设置,就可以批量管理许多用户的设置,十分便捷。至于用AD域来验证登陆,就是我们的程序并不知道任何用户名密码,也不保存,每次登录时将用户名密码送到AD域校验一下就OK了。

        看下代码:

 public  boolean ADsUserCA(String username,String password) {

    	Hashtable env = new Hashtable();
		env.put(Context.INITIAL_CONTEXT_FACTORY, INITCTX);  //驱动
		env.put(Context.PROVIDER_URL, LDAP_HOST);         //主机地址和端口
		env.put(Context.SECURITY_AUTHENTICATION, "simple"); // 使用简单认证来认证用户
		env.put(Context.SECURITY_PRINCIPAL, username);
		env.put(Context.SECURITY_CREDENTIALS, password);
	
    	try {
			ctx = new InitialDirContext(env);
			 try {
		            ctx.close();
		            System.out.println("CA OK");
		        } catch (NamingException ex) {
		            ex.printStackTrace();
		        }
			
			return true;
		}catch (javax.naming.AuthenticationException e) {
			e.printStackTrace();
            System.out.println("CA error1");
           return false;
		}
		  catch(Exception e){
			  e.printStackTrace();
			  System.out.println("CA error2");
	          return false;
		  }
    }
        其中的域服务器地址、端口、用户等等,都是先前条件,这段验证完毕后将结果返回给前端,就OK了,一个简单的AD域验证就是这样了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值