2011-06-07 40 views
2

我看過很多有關如何允許特定的SharePoint應用程序頁面的匿名訪問由UnsecuredLayoutsPageBase繼承網站等SharePoint 2010中ASHX處理程序的匿名訪問

如何能夠做到同樣的事情生活在佈局目錄中的ashx處理程序?默認情況下,SP將要求身份驗證才能進入處理程序。我可以通過允許匿名訪問網站本身來解決這個問題,但是我無法擺脫這種情況......我只需要匿名訪問處理程序。我試圖將web.config文件粘貼到與處理程序相同的目錄中,並允許匿名訪問,但這仍然無效。

+0

你有沒有找到解決這個問題的方法?我有一個指向佈局目錄中的處理程序的web部件。它可以在我們的沙盒上正常工作,因爲它允許匿名訪問,但是我們無法在我們的prod服務器上進行匿名訪問 – Mungoid 2011-11-17 20:28:55

回答

3

我有同樣的情況。你說「你無法讓匿名訪問網站本身」,所以我不確定我的解決方案是否適用於你,但這裏是:

  1. 啓用對SharePoint的匿名訪問(http://www.topsharepoint.com/enable-anonymous-access-in-sharepoint-2010的步驟1 - 6)
  2. 在IIS管理器中,對包含ashx文件的佈局子文件夾啓用匿名身份驗證。 (SharePoint似乎仍需要對應用程序頁面進行身份驗證,因爲它們從LayoutsPageBase擴展而來)。

另外,在我的開發站點我啓用的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> 

不過,我認爲這版本是過於複雜。我更喜歡第一種選擇。

相關問題