`

java连接微软AD进行用户验证

阅读更多
java连接微软AD进行用户验证 

2010-10-21 21:43:40|  分类: Java |字号 订阅
import java.util.Hashtable;
  import javax.naming.Context;

  import javax.naming.NamingException;

  import javax.naming.directory.DirContext;

  import javax.naming.directory.InitialDirContext;

  /**

  * @author winter

  *

  */

  public class Test {

  /**

  * @param args

  */

  public static void main(String[] args) {

  // TODO Auto-generated method stub

  String userName = "xxxxx";   //用户名称

  String password = "xxxxx";   //密码

  String host = "xxx.xxx.xxx.xxx";  //AD服务器

  String port = "389";              //端口

  String domain = "@xxx.com";    //邮箱的后缀名

  String url = new String("ldap://" + host + ":" + port);

  String user = userName.indexOf(domain) > 0 ? userName : userName + domain;

  Hashtable<String, String> env = new Hashtable<String, String>();

  DirContext ctx;

  env.put(Context.SECURITY_AUTHENTICATION, "simple");

  env.put(Context.SECURITY_PRINCIPAL, user); //不带邮箱后缀名的话,会报错,具体原因还未探究。高手可以解释分享。

  env.put(Context.SECURITY_CREDENTIALS, password);

  env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");

  env.put(Context.PROVIDER_URL, url);

  try {

  ctx = new InitialDirContext(env);

  ctx.close();

  System.out.println("验证成功!");

  } catch (NamingException err) {

  err.printStackTrace();

  System.out.println("验证失败!");

  }

  }

  }
分享到:
评论

相关推荐

    java连接AD进行用户登陆

    ### Java 连接 Active Directory 进行用户登录验证的知识点 #### 一、概述 在企业环境中,Active Directory (AD) 是一种广泛使用的目录服务,它可以帮助管理组织内的用户、设备和其他资源。对于需要集成 AD 的 ...

    java验证AD域用户登录

    10. **测试与部署**: 完成AD验证功能后,需要在测试环境中进行充分的测试,确保在不同环境和条件下都能正常工作。在生产环境中部署时,应确保所有配置信息的安全存储和传递。 以上就是关于Java验证AD域用户登录涉及...

    LDAP实现AD域账号验证 - Java/SpringBoot

    在IT行业中, Lightweight Directory Access Protocol (LDAP) 是一种用于存储和检索目录信息的标准协议,而Active Directory (AD) 是微软提供的目录服务,广泛应用于企业环境中进行用户身份验证和权限管理。Java和...

    Java AD域插入用户和密码修改

    在IT行业中,尤其是在企业网络管理领域,Active Directory(AD)域是微软提供的一个关键服务,用于集中管理和控制网络中的用户账户、计算机和其他资源。本文将深入探讨如何利用Java编程语言来实现AD域用户插入和密码...

    JAVA修改AD域密码_免证书

    Java开发人员经常使用Java Naming and Directory Interface (JNDI)来与AD进行交互。在本文中,我们将深入探讨如何使用Java JNDI来修改AD域密码,并重点讲解如何实现免SSL验证的方式。 首先,让我们了解JNDI。JNDI是...

    AD域单点登陆NTLM

    3. **用户验证**:将用户输入的凭证与AD服务器进行验证,通过NTLM协议进行身份确认。 4. **SSO实现**:验证成功后,用户可以无感知地访问其他系统,因为已经通过AD域认证。 DEMO包通常包含一个示例程序,展示了如何...

    ldap 连接 AD

    本文将深入探讨如何使用Java进行LDAP与AD的连接,并通过提供的源代码示例进行解析。 首先,让我们了解LDAP与AD的基本概念。LDAP是一种应用层协议,它使用TCP/IP来查找和检索分布式目录服务中的信息。这些信息可以...

    JAVA对接AD域集成.rar

    通过Java与AD域进行集成,开发者可以构建安全、高效的企业级应用程序,确保只有经过验证的用户才能访问特定资源。 首先,了解基本概念: 1. LDAP(Lightweight Directory Access Protocol):是一种轻量级目录访问...

    JAVA JNDI免证书修改AD域密码.zip

    JNDI(Java Naming and Directory Interface)则是Java平台上的一个标准接口,允许Java应用程序访问各种命名和目录服务,如LDAP(轻量级目录访问协议),而AD通常通过LDAP接口进行操作。 在这个主题中,"免证书"指...

    页面AD用户自动登录程序

    后端服务器通常使用支持LDAP的库,如Python的ldap3或Java的UnboundID LDAP SDK,来连接到AD服务器并执行身份验证。服务器会验证提交的用户名和域名是否存在于AD目录中,以及对应的密码是否正确(尽管密码通常不通过...

    sso.rar_IIS ad java_iis_sso_sso IIS_单点登录

    5. **时序图**:"sso.png" 文件很可能是描述SSO流程的时序图,它会展示从用户请求开始,通过AD验证,再到IIS和J2EE应用之间交互的详细步骤。时序图会包括各个参与者(如用户、浏览器、IIS、AD服务器、J2EE应用)以及...

    cas集成AD域

    AD域是微软Windows Server操作系统中的一个组件,它提供了身份验证、授权和目录服务,允许网络中的设备和用户进行身份验证,并存储和管理用户账户、计算机账户和其他资源的信息。在AD域中,每个用户都有一个唯一的...

    LDAP Weblogic和AD之间的通信

    “Java访问AD.txt”可能是一个详细的指南,介绍如何使用Java代码与AD进行交互,包括创建连接、执行搜索、修改用户属性等。 **密码认证** “Using LDAP for Password Authentication.txt”可能讨论了如何使用LDAP...

    domino_ldap.rar_AD联合验证_Domino_Tomcat_sso_domino_domino_ldap

    在这里,Tomcat可能被用作处理HTTP请求,并调用Java代码来执行AD验证逻辑。 6. **Domino LDAP(Lightweight Directory Access Protocol)**: LDAP是一种协议,用于访问和操作目录服务,如AD。Domino服务器可以...

    修改ad域密码及新增账号demo.zip

    在IT领域,特别是企业网络管理中,Active Directory(AD)是一种广泛使用的目录服务,由微软开发,用于管理和组织网络资源。AD域则是AD服务的核心组成部分,它提供了集中式的身份验证和授权机制。在这个"修改AD域...

    Office365-Java-Connect:从 Java 应用程序到 Office 365 和 Outlook API 的身份验证示例

    此示例演示了如何从 Java 应用程序和调用一些 API 对 Office 365 用户进行身份验证。 此示例使用获取验证令牌,然后使用它们调用特定的 API。 详细地说,该示例执行以下操作: 创建访问和刷新令牌以调用 Azure AD ...

    ldap 访问AD测试

    6. 单点登录(Single Sign-On, SSO):"JAVA代码操作MS AD实现单点登录.txt"可能包含实现SSO的Java代码示例,SSO允许用户只需一次登录即可访问多个应用,简化了用户认证流程。 7. 用户账户控制(UserAccountControl...

Global site tag (gtag.js) - Google Analytics