2009-08-27 200 views
4

我已經在SharePoint網站上爲「列表和庫」配置了匿名訪問。然後,按照我的要求,允許匿名訪問各個列表/庫。匿名訪問SharePoint網站根目錄

這個偉大的工程,但在這裏我希望被重定向到歡迎頁面無法訪問根網站網址:

  1. 訪問http://servername失敗,拒絕訪問
  2. 訪問http://servername/Pages/Default.aspx成功

如果我將Web權限設置爲「整個網站」,我可以訪問根URL,但我不想這樣做。

我正在爲我的網站提供網站定義,並在功能激活期間通過對象模型修改網站,例如,

web.AnonymousPermMask64 = SPBasePermissions.Open; 
web.AnonymousState = SPWeb.WebAnonymousState.Enabled; 
web.Update(); 

...這是我已經成功使用的代碼。

有誰知道如何允許匿名訪問http://servername

回答

5

事實證明,你需要授予Web對象以下權限掩碼:

web.AnonymousState = SPWeb.WebAnonymousState.Enabled; 
web.AnonymousPermMask64 = SPBasePermissions.Open | SPBasePermissions.ViewPages;  
web.Update(); 

其實很簡單!匿名用戶現在可以導航到http://servername並重定向到歡迎頁面。

注意:設置這兩個屬性的順序很重要。將AnonymousState屬性設置爲Enabled,僅將權限掩碼設置爲SPBasePermissions.Open。這將刪除SPBasePermissions.ViewPages標誌,如果您切換兩個屬性的順序如上所示。

0

您需要在頁面庫上啓用匿名訪問,以便您可以訪問default.aspx頁面。

+0

我已經做到了這一點,並且按照我的要求,可以訪問頁面庫。 2.我無法訪問根網站,我希望將其重定向到歡迎頁面。 – Jonny 2009-08-27 08:12:09