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檔案可讀了!簡單許可權控制實現!