私はASP.NET MVCを使用してプロジェクトを開始しています。私はteam_idに基づいて承認とロールを処理する最良の方法を理解できません。 私が読んだすべてのブログエントリまたはフォーラム投稿は、常にasp.netメンバーシップを使用してCustomAuthorizeフィルタを使用してグローバルロール( "admin"、 "helpdesk"、 "editor"など)を定義することについて話します。私のアプリケーションの問題は、グローバルな役割がないことです。ユーザーはteam1のマネージャになる予定ですが、チーム2の詳細を編集または表示することはできません。 許可の詳細は - ユーザーはチーム計画とそのチームメートの可用性を確認できますが、他のチームは表示されません - チームマネージャーはチームの詳細を編集できますが、他のチームの詳細は編集できません - 多くの経営者 - ユーザーが1台のまたは多くのチームASP.NET MVCチームごとの承認とロール
ATMの一部にすることができますが、私はこの関係を処理するための3つのテーブルを持っています。最後の手段として
teams --> teams_users <-- users
team_id #team_id user_id
#user_id
isManager?
、私は彼がログイン時にセッションVARSにおけるユーザの現在TEAM_IDとisManagerの状態を保存するに滑走、およびセッションTEAM_IDがmodel.team_idと同じであるかどうかをチェックしますCustomAuthorizeフィルタを作成しています。別の方法があるかどうかを教えてください。その後、私はあなたが指定しただけのようにデータベースに結びつけるでしょうManagerおよびユーザー - 私はその後、2つの役割を持っているでしょうあなたに