我们的活动目录控制器和域很少,我们的系统应该能够使用其他域的用户查询一个域。 由于一个错误,我们没有在java 1.60_00中做到这一点:
目前我们遇到以下设置问题: 我们正在尝试使用D200.D1.W2K8.CORP.ME的管理员用户连接到QA.DOM,我们收到以下错误: “机制级别:无法创建凭证。(63) - 没有服务信誉”。 我们可以连接到RESOURCE.W2K8.CORP.ME,如果我们使用的是D1.W2K8.CORP.ME的管理员,我们也可以连接到QA.DOM。 在研究了pcap捕获后,我认为java实现有一个关于对具有不同后缀的域的可传递信任的错误。
BTW:我们尝试使用C编写的基于SMB的软件包的相同方案,它可以工作。 它是否已知JRE bug(我搜索过java bug,一无所获)? 是否存在变通方法?我们的活动目录设置:
QA.DOM<----ForestTrust-->D1.W2K8.CORP.ME<-----ForestTrust--->RESOURCE.W2K8.CORP.ME
----------------------------------------------^
-----------------------------------------------|
-----------------------------------------------|
-----------------------------------------------|
-----------------------------------------------^
--------------------------------------------tree(two way trust)
----------------------------------------D200.D1.W2K8.CORP.ME (child of D1.W2K8.CORP.ME).
和krb文件:
[libdefaults]
default_realm = D200.D1.W2K8.CORP.ME
default_keytab_name = FILE:/usr/local/ctera/portal.keytab
[realms]
D200.D1.W2K8.CORP.ME = {
kdc = D200.D1.W2K8.CORP.ME
}
D1.W2K8.CORP.ME = {
kdc = D1.W2K8.CORP.ME
}
RESOURCE.W2K8.CORP.ME = {
kdc = RESOURCE.W2K8.CORP.ME
}
QA.DOM = {
kdc = QA.DOM
}
[domain_realm]
.d200.d1.w2k8.corp.me = D200.D1.W2K8.CORP.ME
d200.d1.w2k8.corp.me = D200.D1.W2K8.CORP.ME
.d1.w2k8.corp.me = D1.W2K8.CORP.ME
d1.w2k8.corp.me = D1.W2K8.CORP.ME
.resource.w2k8.corp.me = RESOURCE.W2K8.CORP.ME
resource.w2k8.corp.me = RESOURCE.W2K8.CORP.ME
.qa.dom = QA.DOM
qa.dom = QA.DOM
答案 0 :(得分:0)
目前还不清楚你在这里问的是什么。然而,
由于存在错误,我们没有在java 1.60_00中做到这一点
没有这样的Java版本。
如果您询问是否遇到了与之链接的错误,则错误报告会指出(假设的)解决方法是恢复到早于1.6.0_31的Java 1.6版本。因此,如果您的版本早于此版本,则证明这不是您的问题。
至于是否某些 JRE错误......
好吧,如果你谷歌的错误消息,有很多点击。快速阅读其中一些内容表明很多时候根本问题在于人们配置事物的方式。所以,如果我是你,我会首先追求 理论。
你可以做的另一件事(如果你有甲骨文服务合同)是开票......
答案 1 :(得分:0)
我为oracle打开了一个bug,他们修复了它: https://bugs.openjdk.java.net/browse/JDK-8012615