私はクライアント/サーバープロジェクトを持ち、WCFと通信しています(名前付きパイプは変更できますが、IISは使用できません)。このプロジェクトはActive Directoryと統合されています。Windows認証、カスタムアクセス許可、WCF、Active Directory
このプログラムは、通常、権限を持たないアクセス許可をユーザーに与えるためのもので、一種のプロキシとして機能します。ユーザーは、クライアントを使用して、実行するタスクを「要求」します。特定の基準が満たされている限り、サーバーはクライアントのタスクを実行します。
これらの基準の1つは、ユーザーがこのタスクを要求できることです。 WCFサービスがユーザーのIDを保証し、データベースと比較し、タスクを実行するか、タスクを拒否する方法が必要です。
Windows認証を使用して、ユーザーが100%保証する方法を教えてください。名前付きパイプを事前に
おかげで、
偽装コードは必須ですか? 実際には、要求されたものとは全く異なるユーザーとしてタスクを実行する必要があります。続行する前に、自分の資格情報を自分のデータベースと照らし合わせて確認する必要があります。これはそうするだろうか? –
発信者の身元を知るには、偽装が必要です。偽装せずに現在のWindows IDを取得すると、サービスが実行されているアカウントのIDが取得されます。チェックするだけで名前を取得し、メソッドから名前を返すだけです。呼び出し元を偽装する方法で作業を行う必要はありません(実際には、実行したくないことです)。 –