关于java AD 验证错误

血饮 2012-01-18 02:31:52
代码如下:
String host = "172.18.8.87"; // AD服务器
String port = "389"; // 端口
String domain = "@ceair.com"; // 邮箱的后缀名
String url = "ldap://" + host + ":" + port;
String user = userName.indexOf(domain) > 0 ? userName : userName + domain;
Hashtable<String, String> env = new Hashtable<String, String>();
DirContext ctx = null;
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);
ctx = new InitialDirContext(env);
执行到 ctx = new InitialDirContext(env); 时候 报如下错误:
javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1,网上也找了,说是全是英文的,大概意思说是:SECURITY_PRINCIPAL 问题,可是我感觉没错呀,请大家给点意见!!
...全文
205 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2012-01-19
  • 打赏
  • 举报
回复
AD 没用过,期待有结

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧