4

MVC asp.net で認証/承認を行う方法に関していくつか質問があります。

各リクエストでユーザー名とパスワードを渡すことでユーザーを認証/承認するWCFサービスがたくさんあります(HttpModuleを使用して検証し、WCFでAuthenticationイベントをキャッチします)。その HttpModule 内の aspnet メンバーシップを使用してユーザーを検証し、プリンシパルも設定して、サービスでロールを設定できるようにします (これらのサービスはさまざまなクライアントと共有されるため、これがどのように機能するかを維持する必要があります)。

これらのサービスを呼び出すことができる MVC プロジェクトを作成したいのですが、ユーザー名とパスワードをセッションに保存して各リクエストに渡したくありません。

誰かが私を助けてくれれば、いくつかのギャップがあるシナリオがあります!

  1. WCF サービス レイヤーで WCF が提供する AuthenticationService をオンにします。

  2. 私の MVC プロジェクトでは、フォーム認証を追加し、メソッドを authorize 属性で装飾します。これにより、認証されていない場合はログイン ページにリダイレクトされます。

  3. ログイン ページで、ユーザーが自分のユーザー名とパスワードを指定すると、WCF AuthenticationService を呼び出してユーザーをログインさせます。次に、これから認証トークンを取得し、セッションに保存します。

  4. 次にサービス層で WCF サービスを呼び出したいときは、このトークンを取得して、要求のヘッダーに追加します。

  5. サービス側でユーザーを検証する HttpModule で、有効なトークンかどうか、または有効なユーザー名またはパスワードかどうかを確認します (他の人がこれらの Web サービスを呼び出すのを容易にするため)。

  6. そうであれば、リクエストを受け入れて正しいデータを返します。

これはこれにアプローチする正しい方法のように思えますか??

どんな助けでも大歓迎です.. :/ 前もって感謝します! ニール

4

1 に答える 1