对于静态文件,如果有具体用户角色权限控制的,需要另外用程序处理。
首先在需要控制的目录中增加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文件可读了!简单权限控制实现!