当前位置: 首页 > news >正文

【Java 工具类】集成AD域账号登录(完整实现)

JAVA集成域账号登录

public class LDAPUtil {//    private static final String LDAP_URL = "ldap://XXXXXXX:389";//主域private static final String LDAP_URL = "ldap://XXXXXXX:389";//辅域//    private static final String LDAP_URL = "ldap://XXXXXXX:389";//域名private static final String USER_EMAIL = "@XXXXXXX.com";/*** LdapContext  验证身份** @param username* @param password* @return* @throws NamingException*/public static LdapContext getLdapContext(String username, String password) throws NamingException {//创建连接Hashtable<String, String> env = new Hashtable<String, String>();env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");env.put(Context.PROVIDER_URL, LDAP_URL);env.put(Context.SECURITY_AUTHENTICATION, "simple");env.put(Context.SECURITY_PRINCIPAL, username + USER_EMAIL);env.put(Context.SECURITY_CREDENTIALS, password);return new InitialLdapContext(env, null);}}

修改登录验证,排除admin管理员账号

//update-start--Author:wangyuhuang  Date:20230615  fro:管理员账号验证账号密码,其他用户验证域账号//2. 验证是否是管理员账号if (username.equals("admin")) {//2-1. 校验用户名或密码是否正确String userpassword = PasswordUtil.encrypt(username, password, sysUser.getSalt());String syspassword = sysUser.getPassword();if (!syspassword.equals(userpassword)) {result.error500("用户名或密码错误");return result;}} else {//2-1. 域账号身份验证LdapContext lct = null;try {// 连接 验证身份lct = LDAPUtil.getLdapContext(username, password);} catch (AuthenticationException e) {System.out.println("账号或密码错误!");} catch (CommunicationException e) {System.out.println("AD域连接失败!");e.printStackTrace();} catch (Exception e) {System.out.println("身份验证未知异常!");e.printStackTrace();} finally {if (null != lct) {try {lct.close();lct = null;} catch (Exception e) {e.printStackTrace();}} else {result.error500("用户名或密码错误");return result;}}}//update-end--Author:wangyuhuang  Date:20230615  fro:管理员账号验证账号密码,其他用户验证域账号

http://www.dtcms.com/a/590782.html

相关文章:

  • 【应用服务器】Tomcat配置与部署详解
  • 重庆网站建设夹夹虫公司网站轮播怎么做
  • 大连商城网站建设建网站如何赚钱
  • 阜宁网站开发男生都知道的微信公众号
  • 山东企业建站系统费用企业安全文化宣传标语
  • 堆相关算法题基础-java实现
  • 鹿泉城乡建设局网站织梦网站怎么上传
  • 宜昌有做网站的公司吗苏州市住房和城乡建设局投折网站
  • 合肥企业自助建站用电信固定IP做网站
  • 推荐网站建设的电销该怎么打工商信息公示系统查询
  • wordpress自定义字段怎么用杭州seo网站推广软件
  • 网站格式有哪些赞皇建站建设
  • 贵阳专业做网站的公司有哪些住房和建设厅网站
  • 宁波优化网站排名软件网站建设软件开发
  • 山西网站建设报价单深圳建站公司推荐
  • 怎么在网站上做推企业代运营公司
  • 易语言可以做网站wordpress友情链接页面插件
  • deepseek的理解
  • 网站规划有前途吗学做ppt推荐网站
  • 中国工商网官方网站免费制作短视频的软件
  • 宁波网站推广设计怎么查网站的浏览量
  • 湖北建设网站信息查询中心北京造价信息网官网
  • 四平市城乡建设局网站网络营销工具优缺点
  • wordpress 站群有官网建手机网站
  • org.apache.ibatis.ognl.OgnlException
  • 电子商务网站建设计划书如何推广我的网站
  • 成功案例 品牌网站宣传推广方案怎么写
  • 响应式网站和普通网站不同广告制作行业
  • 线程相关知识(java)
  • 我用python+C++写了个密码检测引擎,学完这个项目理解底层算法