首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从AD域确定小写域的Java kinit

从AD域确定小写域的Java kinit
EN

Stack Overflow用户
提问于 2016-05-19 10:00:22
回答 1查看 441关注 0票数 0

我们有一个基于Windows的企业级Java应用程序,我们希望使用Kerberos进行单点登录。

我们不使用任何Kerberos配置文件,比如krb5.conflogin.conf,因为我们希望保持客户端尽可能简单,并尽可能灵活地进行更改。

过去几个星期以来,它一直运行良好,只是大多数人必须重新输入他们的Windows密码才能进行身份验证。我可能会在稍后发布另一个关于这个问题。

现在,出于某种原因,应用程序将Kerberos确定为username@corp.example.com而不是username@CORP.EXAMPLE.COM。然后,使用krb_error 41 Message stream modified,身份验证自然会失败。断断续续的登录最终会暂时解决这个问题。

这可以通过使用Java中的股票kinit.exe (或调用其类sun.security.krb5.internal.tools.Kinit)来再现。由于我没有找到关于kinit在没有提供主名称的情况下的实际行为的任何信息,所以我不知道在哪里查找任何原因。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-19 13:49:35

原因是由于某种原因,windows决定在某些情况下将USERDNSDOMAIN环境变量设置为小写。

Kinit从那里获得它的默认领域,请参阅参考链接:http://www.docjar.com/html/api/sun/security/krb5/Config.java.html#1071

现在说到根本原因..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37319890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档