2

Windows 認証を使用して ASP.NET MVC3 イントラネット アプリケーションを作成しています。ドメイン ユーザーのみにこのアプリケーションを使用してもらいたい。ドメイン ユーザーが ( Active Directoryで) 認証されたら、承認のために SQL Server にユーザー (AD ユーザー名で)、Roles & UserRoles テーブルを作成する予定です。

そのため、ユーザーが (コントローラー/アクションにアクセスするための) 一連のアクセス許可を持つロールの一部である場合、そのロールのユーザーのみがそれらを実行/表示できるようにする必要があります。

例: アクション /Locations/Create がある場合、その実行を許可されている役割は、それしか実行できません。

誰かが私にいくつかの指針を与えることができますか?カスタム アクション フィルターを作成し、フィルターを適用するアクション メソッドにフィルター属性を使用する必要がありますか?

4

1 に答える 1

0

ASP.NET MVC ビューへのアクセスを制限するには、ビューをレンダリングするアクション メソッドへのアクセスを制限します。これを実現するために、MVC フレームワークには AuthorizeAttribute クラスが用意されています。

例:

[Authorize(Roles = "Admin, Super User")]
public ActionResult AdministratorsOnly()
{
 return View();
}

詳しくはこちらをご覧ください。

[Authorize] 属性を使用するには、ある種のメンバーシップ プロバイダーを使用する必要があることに注意してください。

于 2012-01-27T21:03:41.943 に答える