特定のユーザーが指定された Web リソースにアクセスできないように制限する
この記事では、特定のユーザーが指定された Web リソースにアクセスできないように制限する方法について説明します。
元の製品バージョン: ASP.NET
元の KB 番号: 815151
概要
ASP.NET に基づく Web アプリケーションは、ユーザーがリソースへのアクセスを認証および承認される多くの方法を提供します。 リソースへのアクセスを制限する方法は、使用する認証方法によって異なります。 たとえば、Microsoft Windows 認証を使用し、偽装を有効にするアプリケーションでは、アクセス制御に新しいテクノロジ ファイル システム (NTFS) ファイルのアクセス許可を使用できます。 ただし、フォーム認証を使用するアプリケーションでは、Web.config ファイルを変更してアクセスを制限する必要があります。 この記事では、これらの ASP.NET 認証方法の両方の承認を制御する方法について説明します。
ファイルのアクセス許可を使用して承認を制御する
Windows 認証を使用し、偽装を有効にする web アプリケーション ASP.NET の場合は、認証を要求し、ファイルとフォルダーへのアクセスを制限するために、標準の NTFS ファイルのアクセス許可を使用できます。
- 認証を要求するには、ファイルまたはフォルダーに対する ASPNET ユーザー アカウントのアクセス許可を削除します。
- 特定の Windows ユーザー アカウントまたはグループ アカウントへのアクセスを制限するには、ファイルまたはフォルダーに対する NTFS ファイルの読み取りアクセス許可を付与または拒否します。
Web.config ファイルを変更して承認を制御する
フォーム認証を使用 ASP.NET アプリケーションへのアクセスを制限するには、アプリケーションの Web.config ファイル内の 要素を編集<authorization>
します。 これを行うには、次の手順を実行します。
メモ帳などのテキスト エディターを起動し、アプリケーションのルート フォルダーにある Web.config ファイルを開きます。
注:
Web.config ファイルが存在しない場合は、ASP.NET アプリケーションの Web.config ファイルを作成します。
アプリケーション全体の承認を制御する場合は、Web.configファイル内の
<system.web>
要素に構成要素を追加<authorization>
します。要素に
<authorization>
、構成要素と構成要素を<deny>
追加<allow>
します。 属性をusers
使用して、ユーザー名のコンマ区切りのリストを指定します。 疑問符 (?) は、任意のユーザー名と一致するワイルドカード文字として使用できます。 たとえば、次のコードでは、 とuser2
を除くuser1
すべてのユーザーへのアクセスが拒否されます。<authorization> <allow users="user1, user2"/> <deny users="?"/> </authorization>
Web.config ファイルを保存します。
関連情報
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示