WCF には豊富なセキュリティ モデルがあります。誰もがそれを前提として同意してくれることを願っています。最近、クライアント アプリケーション (ドメイン内のユーザーの資格情報を利用する WCF ベースのアプリケーション) が、ドメイン外のデータ センターに展開して制御する必要があるサービスと通信する必要がある状況に遭遇しました。その結果、これは私たちのシングル サインオン モデルを壊しました。セキュリティ モデルをドメイン外のサービスに拡張することに成功した人がいるかどうかを知りたいです。
私たちの ID モデルは (WindowsIdentity/WindowsPrincipal ではなく) IIdentity クラスと IPrincipal クラスに依存しているため、別の ID 実装を使用しても問題ありません。私の質問が示唆するように、私には答えがありません。あなたが答えてくれることを願っています。私が試行錯誤した 1 つのソリューションでは、クライアントが現在行っているのと同じ方法でドメインで認証する必要があります。認証の一環として、CA によって署名された X.509 証明書が提供されます (データ センターによって信頼されます)。証明書は証明書ストアに格納され (.NET にバンドルされているものがあると思いますが、ユーザーが時々移動する環境で利用できるかどうかは不明です)、要求されたときに作成/ユーザーに提供されます。
フィードバックやアイデアをいただければ幸いです。
編集:
リモート データ センターに加えて、データ センター内に常駐するサービスがあります。シングル サインオンのみを必要とするソリューションを提供したいと考えています (ユーザーは、このアプリケーションを起動するたびにユーザー名とパスワードを入力する必要があります)。