代码之家  ›  专栏  ›  技术社区  ›  strongopinions

列表中的DispForm.aspx不支持SharePoint匿名访问

  •  0
  • strongopinions  · 技术社区  · 16 年前

    我有一个使用匿名访问的MOSS站点,除了DispForm.aspx上的自定义列表之外,它可以在任何需要的地方工作。

    基本上有一个自定义列表,其中包含指向internet上新闻文章的链接。我已经把这个列表作为RSS订阅源提供了,你可以匿名地把这个订阅源拉上来。但是,提要包含指向SharePoint中各个项目的链接,例如/Lists/My List/DispForm.aspx?ID=23。

    匿名用户可以“查看项目”访问有问题的列表,NT授权用户可以读取有问题的列表和单个项目。我也试过完全控制。

    我尝试在web.config中添加一个位置异常,即。

        <location path="Lists/My%20List/DispForm.aspx">
        <system.web>
          <authorization>
            <allow users="*" />
          </authorization>
        </system.web>
      </location>
    

    但这似乎没有帮助。

    我检查了SharePoint日志,出现以下错误:

    PermissionMask check failed: asking for 0x00001000, have 0x00000000
    
    2 回复  |  直到 16 年前
        1
  •  1
  •   Colin    16 年前

    此office.microsoft.com knowledge base article 对列表或库启用匿名访问

    P、 我有投票权结束这个问题,把它移到它所属的服务器故障。

        2
  •  1
  •   strongopinions    16 年前

    我找到了解决办法。似乎列表和文档库(如DispForm.aspx)中的/Forms下的页面是为匿名用户锁定的,显然是默认的。这是通过名为ViewFormPagesLockdown的功能实现的。启用此功能后,匿名用户无法访问这些页面,无论您对列表本身拥有什么权限。当它被停用时,您必须进入并分配匿名权限(在我的情况下,我很确定我已经在一个列表上启用了匿名访问,但我必须将其更改为其他内容(编辑),然后将其更改回原来的状态,使其开始工作)。

    推荐文章