0

私たちの MVC3 アプリケーションは Fluent NHibernate を使用しており、ユーザー ログイン、認証、承認の実装が必要です。

[Authorize]コントローラー クラスでメソッドを使用している記事を見たことがあります。ただし、Fluent NHibernate が使用されていることを考えると、これがすべての状況でどのように機能するかはわかりません。

これを機能させる方法について、誰かがいくつかの提案を共有できますか?

4

1 に答える 1

2

RoleProviderクラスを実装するカスタム ロール プロバイダーを作成できます。RoleProvider クラスのカスタム実装では、必要なデータベース アクセス テクノロジ (FluentNhibernate など) を使用できます。基本的に、IsUserInRoleメソッドの実装に関心があります。

次に、コントローラー/アクションを Authorize 属性で装飾します。

[Authorize(Roles = "Admin")]
public ActionResult Foo()
{
    return Content("Only administrators can see this message");
}

blog postまた、カスタム ロール プロバイダーの記述について詳しく説明している別の記事もあります。

于 2012-08-08T17:59:03.737 に答える