1. 程式人生 > >IIS7 下通過web.config來控制html檔案的訪問

IIS7 下通過web.config來控制html檔案的訪問

對於靜態檔案,如果有具體使用者角色許可權控制的,需要另外用程式處理。

首先在需要控制的目錄中增加web.config檔案,裡面配置如下:

<system.web>
        <!--compilation debug="true" /-->
        <customErrors mode="Off"/>
        <compilation>
            <buildProviders>
                <add extension=".html" type="System.Web.Compilation.PageBuildProvider" />
                <add extension=".htm" type="System.Web.Compilation.PageBuildProvider" />
            </buildProviders>
        </compilation>

        <authentication mode="Forms">
   <forms cookieless="UseCookies" name="LoginCookieName" loginUrl="~/login.aspx">
                <credentials passwordFormat="Clear">
                    <user name="admin" password="000000" />
                  </credentials>
            </forms>
  </authentication>
        <authorization>
            <deny users="?" />
        </authorization>
 </system.web>
   
    <system.webServer>
        <handlers>
            <add name="HTML" path="*.html" verb="GET, HEAD, POST, DEBUG"   type="System.Web.UI.PageHandlerFactory" resourceType="Unspecified" requireAccess="Script" />
            <add name="HTM" path="*.htm" verb="GET, HEAD, POST, DEBUG" type="System.Web.UI.PageHandlerFactory" resourceType="Unspecified" requireAccess="Script" />
        </handlers>
    </system.webServer>

       其中 admin/000000 就是在cookie中新增的使用者名稱和密碼,這樣也不需要資料庫來儲存了.

        完成以上工作後,如果直接輸入url地址去訪問A.html檔案,系統將自動跳轉到/Login.aspx(根目錄下web.config有Forms校驗設定)

當輸入使用者名稱/密碼,登入系統以後,再輸入url地址去訪問A.html檔案,這個html檔案可讀了!簡單許可權控制實現!