2012-03-13 6 views
0

私はドメインAにアプリケーションを持っており、ドメインBの資格情報を使用してドメインBのコンテンツにアクセスしたいと考えています。 これらのドメインは信頼できません。ドメインAのユーザーに挑戦し、ドメインBの資格情報を入力できるようにしますか?次に、これらの資格情報を使用してドメインBで認証します。つまり、ドメインAのKerberos Distribution Center(KDC)をバイパスします。WCFを使用して2つの信頼できないドメインにわたるKerberos委任

単一のドメイン内でこれを動作させることに問題はありません。つまり、チャレンジされたユーザーを偽装し、委任の偽装レベルを維持することです。しかし、MSのドキュメントによると、ドメインAのアプリケーションは、チケット(またはチケットの発行に失敗)を発行するためにKDCを使用し、これによりドメインBのサービスがNTLMに落ちます。

ドメインAのサービスを強制的にドメインBのKDSを使用することはできますか?私はここから離れていくことができます。

アーキテクチャはMicrosoft WCFサービスです。

おかげで、 ケビン

答えて

0

は、迅速な答えは、あなたが信頼のいくつかのレベルを持つ2つのドメインなしドメイン間で認証情報を渡すことはできませんNOです。

しかし、私はasp.netフォーム認証を使用してこれを回避しました。ドメインAのユーザー資格情報が失敗すると、ドメインBの資格情報を効果的に入力し、ユーザーIDを盗み出してAsp.Netフォーム認証Cookieで暗号化する「認証」MVCコントローラーにリダイレクトされます。これは応答ヘッダーに返されます。すべての後続のリクエストはこのCookieで行われ、セッションCookieで認証されたユーザーを確認します。委任ほどエレガントではありませんが、機能します。