Active Directoryコントローラーとドメインはほとんどなく、システムは他のドメインのユーザーを使用して1つのドメインにクエリを実行できるはずです。バグのため、java1.60_00でそれを実行するように管理しませんでした。
現在、次の設定に問題があります。D200.D1.W2K8.CORP.MEの管理者ユーザーを使用してQA.DOMに接続しようとすると、次のエラーが発生します。「メカニズムレベル:資格情報の作成に失敗しました。(63 )-サービス資格なし」。RESOURCE.W2K8.CORP.MEに接続できます。また、D1.W2K8.CORP.MEの管理者を使用している場合は、QA.DOMに接続することもできます。pcapキャプチャを調査した後、Java実装には、異なるサフィックスを持つドメインへの推移的な信頼に関するバグがあると思います。
ところで:Cで記述されたSMBベースのパッケージで同じシナリオを試しましたが、機能します。それは既知のJREバグですか(Javaバグを検索しましたが、何も見つかりませんでした)?回避策はありますか?
Active Directoryのセットアップ:
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