私は、Visual Studio 2011 ベータ版を使用して新しい asp.net mvc4 プロジェクトに取り組んでおり、セキュリティ全体について頭を悩ませようとしています。これは、最初にシングル サインオンを使用する内部イントラネット アプリケーションであるため、(まだ) ユーザーに Windows ID/パスワードの入力を求めるプロンプトは表示されません。この会社には、さまざまなアプリケーションのロールを格納するためのカスタム アプリケーションがあり、ストアド プロシージャ コールを介して利用できます。これは、ユーザーのログオン ID を受け取り、"MyApp.Data"、"MyApp.User、"MyApp.Admin" などのロールを含む何らかのコレクションを返します。つまり、これは何と呼ばれているのか - これはカスタム メンバーシップ プロバイダー、カスタム ロールですか?プロバイダか何か?
承認、認証、メンバーシップ、役割などのすべての詳細を調べてきましたが、現時点では木に木が見えません。既存の ASP.NET セキュリティ オブジェクトが試され、テストされていることを読みました。非常に複雑な要件がない限り、組み込みのもので十分なので、既にあるものを喜んで使用します。
ユーザーがすでにネットワークにサインインしている場合、これは認証されていることを意味します - 正しいですか? もしそうなら、Authorizationを実装するだけです。各コントローラーまたはアクションを Authorize 属性で装飾する必要はありますか? その場合、カスタム ロール ストレージ アプリからロールを取得すると、[Authorize(Roles = "ABC")] の "ABC" 部分はどのように設定されますか?
Jon Galloway の次の記事を含め、いくつかの記事やブログ記事を読みましたが、最後まで道に迷ってしまいました。
非常に多くの質問...これらすべてがどのように結びついているかについての優れた高レベルの説明を誰かが知っているなら、私はすべて耳にします:)