我在网上看到了很多关于如何通过继承UnsecuredLayoutsPageBase等来允许匿名访问特定SharePoint应用程序页面的信息。
如何为布局目录中的ashx处理程序实现相同的功能?默认情况下,SP将需要身份验证才能访问处理程序。我可以通过允许匿名访问网站本身来解决这个问题,但我无法逃脱...我只需要匿名访问处理程序。我试图将web.config文件放在与处理程序相同的目录中,并允许匿名访问,但仍然无效。
答案 0 :(得分:3)
我有同样的情况。你说你“无法逃脱[...]允许匿名访问网站本身”,所以我不确定我的解决方案是否适合你,但现在是:
或者,在我的开发站点上,我启用了SharePoint匿名访问,从IIS管理器启用了匿名访问,然后创建了2个web.config规则
<system.web>
<authorization>
<deny users="?" />
</authorization>
...
</system.web>
<location path="_layouts/Folder/Anonymous.ashx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
但是,我认为该版本过于复杂。我更喜欢第一种选择。