2010-11-30 11 views
1

私はマルチホームのシステムを持っています。つまり、顧客がデータベースを共有しています。 MVCルーティングを使用して、顧客名をドメインの最初の部分({customer}.server.tld)として渡すことができ、それをコントローラアクションのパラメータに変換します。マルチホーム環境での承認

問題は、次のとおりです。

認可:コントローラのアクションを作成する開発者はこれを行うには覚えておく必要はありませんように私は、透過的にこれを行うことができ、それらが許可されていない場合は許可されていない、誰かが自動的に403を受け取ることになりますか特定の顧客を表示するには?

パラメータの受け渡し:すべてのコントローラアクションに「customerId」というパラメータを設定する必要はありません。データにはGUID主キーがあるため、データアクセスレベルではcustomerIdは必要ありません。

ここで何をすればよいですか?ユーザーがURLを変更して顧客のすべてのデータにアクセスする必要はありません。

答えて

0

Windows Identity Foundation(WIF)を使用したことがありますか? AuthZからAuthNを分離するだけでなく、(ルートデータに基づいて)各顧客の主張をチェックし、それに応じて行動できるコードロジックを1つの場所に持つことができます。これらのリンクのいくつかを.Check: