[Authorize]
すべてのコントローラーで属性を使用せずに、AD グループに基づいてイントラネット サイトへのサイト全体のアクセスを許可する方法はありますか?
Windows 認証を使用しています。
[Authorize]
すべてのコントローラーで属性を使用せずに、AD グループに基づいてイントラネット サイトへのサイト全体のアクセスを許可する方法はありますか?
Windows 認証を使用しています。
webconfig での使用
<system.web>
<authentication mode="Windows">
</authentication>
<authorization>
<allow users="groupname"/>
<deny users="*"/>
</authorization>
</system.web>
こちら でAuthorizeAttribute
説明されているように、グローバル フィルター コレクションに を追加できます。
public static void RegisterGlobalFilters(GlobalFilterCollection filters) {
filters.Add(new AuthorizeAttribute());
filters.Add(new HandleErrorAttribute());
}
ファイルベースのアクセスが制限されるため、通常、これに Web.config要素を使用することはお勧めできません。ただし、サイト全体を保護する場合は、Web.config ファイルを使用しても問題ありません。authorization
Windows で Windows 認証を有効にするには:
a) コントロール パネルで、[プログラムと機能] を開きます。
b) [Windows の機能の有効化または無効化] を選択します。
c) [インターネット インフォメーション サービス] > [World Wide Web サービス] > [セキュリティ] に移動し、Windows 認証ノードがオンになっていることを確認します。
Windows Server で Windows 認証を有効にするには:
a) サーバー マネージャーで、[Web サーバー (IIS)] を選択し、[役割サービスの追加] をクリックします。
b) [Web サーバー] > [セキュリティ] に移動し、Windows 認証ノードがオンになっていることを確認します。
ついに
プロジェクトの [プロパティ] ペインで:
a) 「匿名認証」を「無効」に設定します。
b) 「Windows 認証」を「有効」に設定します。