Kerberos認証のネイティブJavaでは、システム資格java.security.krb5.kdc
とjava.security.krb5.realm
を使用して、ユーザー資格情報の確認を求めるサーバーを指定します。 同じアプリケーションで異なるサーバーで認証する良い方法はありますか?同じJavaアプリケーションで異なるKerberos KDCで認証する
など。サーバーpeons.company.com
ではユーザーsmith
を認証したいが、johndoe
のユーザーはbigbosses.company.com
になります。 System.setProperty()
を使用してKDCを切り替えることもできますが、Java Kerberos実装が実際にサポートしているかどうかはわかりません。言うまでもなく、スレッド間の同期が必要で、一般的にハッキリを感じることはありません。
[私は別のサーバー設定でこれを解決することができるか、私はそれらをコントロールしていないが私に教えないでください。]
...あなたにいくつかの例を得るでしょう、それは*プリンシパルを認証します。異なるKDCは異なる領域を意味します。したがって、あなたのユーザーの 'smith'は実際に' smith @ COMPANY.PEON'と 'johndoe @ COMPANY.VIP'と認証されなければなりません。 –
BTW、どのようなKDC実装に接続していますか? - MIT、Microsoft Active Directory、 –