2011-04-28 14 views
0

ASP.NET MVCで初めてのサイトを作成しています。特定のユーザーの特定のアイテムに基づいてアクセス権やロールを設定する方法を知りたいと思います。ASP.NET MVCサイトのアイテム固有のパーミッション

私のサイトには、各ユーザーが1つ以上のプロジェクトのメンバーになることができるプロジェクトとユーザーがあります。プロジェクトのメンバーである各ユーザーは、そのプロジェクトに関連していくつかの役割に割り当てられます。しかし、各ユーザーには、メンバーとして参加しているプロジェクトごとに異なる役割を割り当てることができます。

このようなことを行うには、メンバーシップの組み込み機能を利用できますか?私がユーザーの義務を見るところから、プロジェクトのような特定の項目ではなく、サイト全体に適用される役割へ。

私は、ProjectIdとプロジェクトロールを3213ProjectEditorのような単一の結合ロールに連結してロールを作成することを考えていました。だから、後で私はUser.IsInRole(currentProject.ID+"ProjectEditor")を使用して、ユーザーがcurrentProjectのエディタであるかどうかを判断できます。しかし、これは私にハックのようだ。

答えて

0

既存のロールとユーザークラスを使用する組み込みの認証プロバイダは、要求と応答と基になるHttp接続にあまりにも拘束されています。あなたのためにこれらのクラスを使うのは良い考えではありません。

参考資料として、組み込みクラスのソースであるhereを入手し、独自のドメインモデルを構築することができます。