zoukankan      html  css  js  c++  java
  • Web页面访问权限

    前些天,给客户的网站做更新部署时,因为只修改了aspx页面,没有改.cs的代码,就想让客户协助部署下。

    客户用新的aspx页面替换原来的后,发现导航中关于这个页面的链接没有。期间还对数据进行了垃圾数据的清理。开始觉得很奇怪,那个导航没有做权限控制呀,怎么会看不见。又让客户把备份的原来的文件还原回去,导航中还不出现那个链接。

    开始怀疑是否客户不小心清除了有用的数据?还是代码中以前隐藏的bug爆发了?

    开始自己查看了下导航相关的代码,确认代码没有问题。实现过程就是通过sitemapprovider读取sitemap数据,自己code实现表现,其中也没有权限控制。 自己这里发布的网站没有问题,只好去客户现场查看原因了。

    到客户现场后,把网站由原来的windows验证改成Forms后,登录网站没有问题。又改成windows验证,请客户登录后,导航还是不显示相应的链接。因为知道页面链接,直接在浏览器地址栏敲了,敲完后回车,提示没有权限。

    网站的web.config的权限是没有问题的,那只可能是windows权限的问题了。查看文件的属性的安全标签页,果然和其他的文件的访问的权限不一样。修改该文件的访问权限(继承父文件夹权限)后,网站导航中出现了该页面的链接。问题解决了!

     以前部署网站时,也是复制文件进入。怎么这次文件的安全改变了?不同就是以前是发布网站后,复制文件。这次是直接复制VSS中的aspx页面,使用邮件附件发给客户的。 自己用虚拟机做了实验后,没有出现上述问题。有些奇怪?

    asp.net页面权限在web.config可以配置,也可以在单独文件夹下添加web.config 做单独的权限限制。

    Sitemap会根据当前登录人的角色和web.config的配置,判断该用户是否有权限访问页面,以决定是否现实该页面的链接。

     没有想到如果windows权限不够,Sitemap也会隐藏该页面的链接。

  • 相关阅读:
    System.Runtime.InteropServices.COMException (0x800706BA) 解决方法
    Win7 不能安装 msi 解决办法
    note 1 对象和数据类型
    note 0 Python介绍及Python IDE环境安装 Spyder with Anaconda
    无法获得锁 /var/lib/dpkg/lock
    keil5 MDK 链接报错 Error: L6410W 解决
    手动卸载CAD 删除残留文件 清理遗留的文件
    keil5 MDK warning:registered ARM compiler version not found in path
    干掉hao123劫持浏览器主页
    Win7 无法访问Installer服务
  • 原文地址:https://www.cnblogs.com/qishichang/p/1633555.html
Copyright © 2011-2022 走看看