限制特定使用者存取指定的網頁資源

本文說明如何限制特定使用者存取指定之網頁資源的方法。

原始產品版本:  ASP.NET
原始 KB 編號:  815151

摘要

以 ASP.NET 為基礎的 Web 應用程式提供許多方式,以供使用者驗證及取得存取資源的授權。 限制存取資源的方式,會根據您使用的驗證方法而有所不同。 例如,針對您使用 Microsoft Windows 驗證並啟用模擬的應用程式,您可以使用新的技術檔案系統(NTFS)檔案許可權進行存取控制。 不過,對於使用表單驗證的應用程式,您必須修改 Web.config 檔案,以限制存取。 本文說明如何控制這兩種 ASP.NET 驗證方法的授權。

使用檔許可權控制授權

針對您使用 Windows 驗證並啟用模擬的 ASP.NET web 應用程式,您可以使用標準 NTFS 檔案許可權來要求驗證,以及限制對檔案和資料夾的存取:

  • 若要要求驗證,請移除 ASPNET 使用者帳戶對檔案或資料夾的存取權限。
  • 若要限制特定 Windows 使用者帳戶或群組帳戶的存取權,請授與或拒絕對檔案或資料夾的讀取 NTFS 檔案許可權。

透過修改 Web.config 檔控制授權

若要限制存取使用表單驗證的 ASP.NET 應用程式,請 <authorization> 在應用程式的Web.config檔案中編輯元素。 如果要執行這項操作,請依照下列步驟執行:

  1. 啟動文字編輯器(如 [記事本]),然後開啟位於應用程式根資料夾中的Web.config檔案。

    注意

    如果Web.config檔案不存在,請為 ASP.NET 應用程式建立Web.config檔案。

  2. 如果您想要控制整個應用程式的授權,請將 <authorization> configuration 元素新增至 <system.web> Web.config檔案中的元素。

  3. <authorization> 元素中,新增 <allow> configuration 元素及 <deny> configuration 元素。 使用 users 屬性來指定以逗號分隔的使用者名稱清單。 您可以使用問號(?)做為符合任何使用者名稱的萬用字元。 例如,下列程式碼會拒絕存取除了和以外的所有使用者 user1 user2

    <authorization>
        <allow users="user1, user2"/>
        <deny users="?"/>
    </authorization>
    
  4. 儲存Web.config檔案。

參考