网站的前台用户权限和后台用户权限是否要设置成不同?前台只需要浏览即可,而后台却需要管理网站信息,提交网站信息。问题:
1、是不是前台只需要在iis6.0中设置读取的权限(默认的权限)。而后台却要设置有“写入”和“脚本和可执行文件”等其它权限?不然,会不会出现从后台不可修改前台信息的情况?2、发布网站,在设置权限时,是不是一般只是用默认的权限,也就是只有“读取”权限?而不再设置其它权限。如果设置其它权限,则会存在不安全的因素?
1、是不是前台只需要在iis6.0中设置读取的权限(默认的权限)。而后台却要设置有“写入”和“脚本和可执行文件”等其它权限?不然,会不会出现从后台不可修改前台信息的情况?2、发布网站,在设置权限时,是不是一般只是用默认的权限,也就是只有“读取”权限?而不再设置其它权限。如果设置其它权限,则会存在不安全的因素?
通过forms验证,session等判断用户角色实现控制
如forms 验证
location path="允许匿名访问的文件夹名称或者文件路径"
<configuration>
<system.web>
<authentication mode="Forms">
<forms name="MYWEBAPP.ASPXAUTH" loginUrl="login.aspx"
protection="All" path="/"/>
</authentication>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
<location path="admin">
<system.web>
<authorization>
<allow roles="Administrator"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
<location path="users">
<system.web>
<authorization>
<allow roles="User"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
</configuration>
if (User.Identity.IsAuthenticated&&User.IsInRole("user"))
{
Response.Redirect("index.aspx");
} basepage
if (Session["login"] == null)
{
Response.Redirect("");
}
你需要自己建立或者用asp.net自带的MemberShip,来管理User和Role当用户登录后,判断用户所拥有的Role,来决定这个用户可以看到什么东西。
如果有Admin Role就可以显示可以进入后台的菜单;如果没有只显示前台的内容以及菜单。