1

私はMVC .Netが初めてです。RBAC システムを実装したい。特定のメンバーが実行できる特定のアクション/権限があります。

これを可能にするセキュリティ フレームワークはありますか?

より詳しい情報

フォーラムに似たものを探しています-ユーザーは新しい投稿を作成したり、返信したりできます。一方、モデレーターは、投稿を変更したり、ユーザーを禁止したりする権限とそれらを許可する必要があります通常のユーザーに付与される権限。

私は、.NET フレームワークがメンバーシップ テーブルを提供していることを読みました。私はそれについてあまり知識がありませんが、私が理解したことから、ユーザーを特定のメンバーシップにグループ化するだけです. アクセス許可の概念はありません。

メンバーシップ テーブルの上に別のレイヤーを追加する必要がありますか (車輪を再発明しているように見えます)、またはこれを行うフレームワークが既にありますか。

4

4 に答える 4

2

Rhino Securityを確認する必要があります。これにより、独自の操作を定義し、特定のグループ/ユーザーなどにアクセス許可を適用できます。

http://ayende.com/blog/3109/rhino-security-overview-part-i

于 2012-05-01T16:32:12.177 に答える
0

メンバーシップおよびロールプロバイダーについて読んでください。彼らはあなたの要件を処理するように設計されています。

ロールプロバイダーの基本的な仕事は、ユーザーをロールにマッピングするロールデータを含むデータソースとインターフェイスし、ロールの作成、ロールの削除、ユーザーのロールへの追加などの方法を提供することです。Microsoft .NET FrameworkのSystem.Web.Security名前空間には、ロールプロバイダーの基本的な特性を定義するRoleProviderという名前のクラスが含まれています。

于 2012-05-01T16:33:47.707 に答える
0

メンバーシップ プロバイダーでロールを使用して、単純なアクセス許可ベースのセキュリティを実行できます。役割「管理者」を定義し、役割に基づいて権限を設定するだけです。

より高度なアクセス許可 (allow-deny など) が必要な場合は、さらに作業を行う必要があります。

しかし、RBAC (Role Based Access Control) を探しているとおっしゃいましたが、asp.net にはそれが組み込まれています。

于 2012-05-01T17:04:41.883 に答える
0

メンバーシップ プロバイダーを使用することもできますが、使用が複雑で、しばしば混乱を招く可能性があります。私は小さく始めて、あなたの方法で作業します。メンバーシップ プロバイダーは、複数のアプリがあり、認証ポイントが 1 つであるシングル サインオン (SSO) などに最適です。

それ以外の場合は、MVC で AuthorizeAttribute を使用します。それをサブクラス化し、まさに必要なことを行う属性の拡張を作成できます。

于 2012-05-01T17:40:27.207 に答える