【发布时间】:2016-01-28 01:32:48
【问题描述】:
我想使用 Java 对 VDS(虚拟目录服务器)进行用户身份验证。
- VDS 与 LDAP 有何不同?或者 VDS 也在 LDAP 上工作 协议?
请提供任何用于针对 VDS 进行身份验证的示例 Java 代码
针对 LDAP 进行身份验证的示例代码如下
String userName = "John P R-Asst General Manager";
String passWord = "asdfgh123";
String base ="OU=SOU,DC=example,DC=com";
String dn = "cn=" + userName + "," + base;
String ldapURL = "ldap://mdsdc3.example.com:389";
authEnv.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
authEnv.put(Context.PROVIDER_URL, ldapURL);
authEnv.put(Context.SECURITY_AUTHENTICATION, "simple");
authEnv.put(Context.SECURITY_PRINCIPAL, dn);
authEnv.put(Context.SECURITY_CREDENTIALS, password);
try {
DirContext authContext = new InitialDirContext(authEnv);
return true;
} catch (NamingException namEx) {
return false;
}
要针对 VDS 进行身份验证,需要完整的 dn。因为根据专家的说法,只需将用户名和密码发送到 VDS。它将自动找到其 DN 并进行身份验证。 如果有人提供有关 ldap 和 vds 的参考资料,将不胜感激
【问题讨论】:
-
您是否在问身份验证系统之间的区别是什么(在这种情况下,您最好在不同的站点,也许是服务器故障)?或者你知道你想要做什么但不能让 java 代码工作(在这种情况下,你需要非工作代码和一个 java 标签)?
-
请澄清您的问题。
-
改进的代码格式
标签: authentication active-directory ldap ldap-query vds