私は MVC3 を学習中で、自分のプロジェクトに独自の MembershipProvider と RoleProvider を実装して、winforms アプリケーションのログインおよびアクセス制限システムで現在使用されている既存のデータベースのテーブルを利用しました。
[Authorize]
すべてが期待どおりに機能しますが、コントローラーのアクションのタグに関して何か間違っている可能性があると思います。
次のようなものを使用すると、制限は正常に機能します。
[Authorize(Roles = "Admin, Purchaser")]
ただし、ロール「管理者」と「購入者」の名前はデータベースのロール テーブルにあり、このAuthorize
タグにハードコーディングしたのは「間違っている」ようです。Authorize
これは、データベース テーブルに新しいロールを追加した場合、関連するタグも変更する必要があることを意味します。
データベース内のロールが頻繁に変更されるわけではありません。私には少し「堅い」ように思えます。
だから私の質問は、私はこれを正しくやっていますか? それを行うためのより良い方法はありますか、それとも MVC プロジェクトでこのシステムを利用する標準的な方法ですか?
どうもありがとう。