2009-06-29 25 views
1

これを達成するために多くの研究を行っていますが、これを達成するための明確なカット「最良の方法」は実際には見つかりませんでした。私は多くの異なるグループのユーザーを持つアプリケーションを開発しています。本質的に、複数の企業が同じアプリケーションを使用できるようにしています。私が意味するものの例を次に示します:ASP.NET MVC複数の異なるユーザーグループ - 承認/認証

Google Appsでは - ユーザーはmail.company.comに行きます - >それらはmail.google.com/a/company.comにリダイレクトされます。

私はCNAMEレコードの使用方法を理解しており、アプリケーションがmy.app.com/company.comに変換されるように、アプリケーションがそのアプリケーションにリダイレクトされた後にそのホストをドメインから引き出すことができます。また、すべてのルートは{companyURL}属性を使用するように設定されています。

これで問題が解決しました。どうすれば "動的な"役割チェックを行うことができますか?ユーザーの会社名とその会社の他の役割を設定するカスタムロールプロバイダを作成するのは簡単ですが、{companyURL}を承認フィルタに設定する方法はわかりません。認可フィルタに動的変数を持たせることは可能ですか、それとも各コントローラ/アクション内でこれをチェックする必要がありますか?それとも、私はまだ考えていないでしょうか?

おかげ

答えて

1

すでに別のシステムで定義された役割を持っている場合、私は、カスタムロールプロバイダクラス、またはカスタムIAuthenticationFilterとなるだろう。

+0

ありがとうございます - 私は、Authorize()アクションフィルターを呼び出したコントローラーに基づいてログインを実行するために、MVCのOnAuthorizationメソッドを使用するつもりだと思います。 – Tommy