規劃網站安全性 (Office SharePoint Server)

本文內容:

  • 關於網站安全性元素

  • 關於指派權限

  • 關於微調權限和權限繼承

  • 選擇使用的網站安全性層級

  • 規劃權限繼承

  • 子網站指令碼

  • 工作表

本文說明網站集合、網站和子網站層級之存取控制和授權的規劃,並不會說明伺服器或伺服器陣列安全性的規劃。如需規劃安全性之其他部分 (如驗證方法和加密) 的詳細資訊,請參閱<規劃網站和內容安全性 (Office SharePoint Server)>。

將權限指派給特定安全物件 (如網站、清單或項目) 的使用者和群組,就可以控制網站安全性。當您規劃網站安全性時,需要決定:

  • 想要控制個別安全物件權限的程度。例如,您是否想要控制整個網站的存取,或是否需要特定清單、資料夾或項目的特定安全性設定?

  • 想要分類和管理使用者的方式 (透過使用群組)。本文涵蓋網站安全性的基本項目,並協助您決定要套用特定權限的安全物件。如需將使用者分類為群組的詳細資訊,請參閱<選擇要使用的安全性群組 (Office SharePoint Server)>。

    注意

    群組和權限的互動方式與舊版本有極大的變更。在舊版本中,網站層級群組用來包含使用者和權限,即當您將使用者新增至網站群組時,就會自動決定要授與使用者的網站權限。在這個版本中,使用者和權限群組的概念已加以區分:網站集合層級的 SharePoint 群組包含使用者、權限層級則包含權限,而群組在獲得指派特定安全物件 (如網站、清單或文件庫、資料夾、項目或文件) 的權限層級之前沒有任何權限。

關於網站安全性元素

不論建立的網站類型為何,網站的安全性都包括下列五種元素:

  • 個別使用者權限   授與執行特定動作之能力的個別權限。例如,檢視項目權限會授與使用者檢視清單中項目的能力。伺服器陣列管理員可以使用管理中心的 [Web 應用程式的使用者權限] 頁面,來控制伺服器陣列可用的權限 (若要到達這個頁面,請在 [應用程式管理] 頁面上的 [應用程式安全性] 下,按一下 [Web 應用程式的使用者權限]****)。如需可用權限的資訊,請參閱<User permissions and permission levels>。

  • 權限層級   授與使用者執行相關動作之權限的預先定義權限集。預設的權限層級如下:限制存取、讀取、參與、設計和完全控制。例如,[讀取] 權限層級包括 [檢視項目]、[開啟項目]、[檢視頁面] 和 [檢視版本] 權限等,而且需要所有這些權限,才能讀取 SharePoint 網站的文件、項目和頁面。權限可以包括多個權限層級。權限層級可以由已被指定該權限層級且包含「管理權限」權限的任何使用者加以自訂。如需預設權限層級以及其中所包含權限的資訊,請參閱<User permissions and permission levels>。

  • 使用者   具有使用者帳戶且可以透過伺服器所用驗證方法進行驗證的人員。您可以新增個別使用者,並直接指派每位使用者的權限層級;而使用者並不需要是群組的成員。建議您將權限指派給群組,而不是使用者。因為直接維護使用者帳戶是沒有效率的作法,所以您應該只有在例外情況下才以個別方式指派使用者的權限。如需使用者帳戶類型的詳細資訊,請參閱<User permissions and permission levels>。

  • 群組   使用者的群組。可以是您新增至網站的 Windows 安全性群組 (如 Department_A) 或 SharePoint 群組 (如網站擁有人、網站成員或網站訪客)。每個 SharePoint 群組都會獲指派預設權限層級,但是您可以根據需要來變更任何群組的權限層級。指定包含「建立群組」權限 (預設包含在「完全控制」權限層級) 之權限層級的任何使用者,皆可建立自訂 SharePoint 群組。

  • 安全物件   將特定安全物件 (網站、清單、文件庫、資料夾、文件或項目) 的權限層級指派給使用者或群組。根據預設,清單、文件庫、資料夾、文件或項目的權限,會繼承自上層網站或上層清單或文件庫。不過,已指派特定安全物件之權限層級且包括 [管理權限] 權限的所有人,都可以變更該安全物件的權限。根據預設,權限一開始是在網站層級控制,所有清單和文件庫都會繼承網站的權限。而使用清單層級、資料夾層級和項目層級的權限,即可進一步控制哪些使用者可以檢視網站內容或與之互動。您隨時都可以回復從父項清單、整個網站或父項網站繼承權限。

關於指派權限

您可以將特定安全物件 (網站、清單或項目) 的權限層級指派給使用者或群組。個別使用者或群組可以具有不同安全物件的不同權限層級。

注意

因為直接維護使用者帳戶是沒有效率的作法,所以建議您盡量使用群組權限。特別的是,如果您使用微調權限 (請參閱下一節),就應該使用群組以避免需要追蹤個別使用者帳戶。人員可能會經常在小組中加入、退出及變更職務,而追蹤所有的變更且不斷更新安全性物件的權限並不實際,所以只要掌握安全性物件的唯一權限即可。

下圖說明如何將特定安全物件的特定權限層級指派給使用者和群組。

特定授權層級

關於微調權限和權限繼承

您可以使用微調權限 (清單或文件庫、資料夾或者項目或文件層級的權限) 更精確地控制使用者可以在您網站上採取的動作。下列是可以進行權限指派的安全物件:

  • 網站   控制整個網站的存取權。

  • 清單或文件庫   控制特定清單或文件庫的存取權。

  • 資料夾   控制資料夾內容 (如資料夾名稱) 的存取權。

  • 項目或文件   控制特定清單項目或文件的存取權。

權限繼承及微調權限

根據預設,網站內的權限是從網站繼承而來。不過,您可以編輯安全物件的權限 (指派唯一的權限) 來中斷位於階層層級較低之任何安全物件的繼承關係。例如,您可以編輯文件庫的權限,來中斷其網站繼承關係。不過,只會中斷已指派權限之特定安全物件的繼承;網站的其餘權限則不會變更。您可以隨時回到從上層清單或網站繼承權限的架構。

權限繼承及子網站

網站本身也是可以指派權限的安全物件。您可以設定子網站繼承其父項網站的權限,也可以為特定網站建立唯一權限。繼承權限是最簡單的網站群組管理方式。不過,如果子網站是從其父項繼承權限,則會共用該權限集。這表示權限繼承自父項網站的子網站擁有人,可以編輯該父項網站的權限。如果您想要單獨變更子網站的權限,則必須停止繼承權限,然後進行變更。

子網站可以繼承父項網站的權限。您可以建立唯一的權限,以停止繼承子網站的權限。如此會將群組、使用者和權限層級從父項網站複製至子網站,然後中斷繼承。如果您將唯一的權限變更為已繼承,則使用者、群組和權限層級會開始變為已繼承,而且會遺失唯一定義於子網站的任何使用者、群組或權限層級。也會繼承權限層級 (預設它們本身就是繼承而來),而且不論套用的物件為何,[讀取] 權限層級都會相同。您可以編輯權限層級以中斷該繼承。例如,您可能不會想要特定子網站的 [讀取] 權限層級包括 [建立提醒] 權限。

選擇使用的網站安全性層級

當您建立權限結構時,務求兼顧容易管理、效能與控制個別項目之特定權限需求間的平衡。如果您大量使用微調權限:

  • 您將需要較多時間來管理權限。

  • 如果網站集合包含超過 10,000 個唯一存取控制清單 (ACL),Microsoft Office SharePoint Server 可能會停用輸出快取。使用者可能會在嘗試存取網站內容時感到效能變慢。如需快取的詳細資訊,請參閱<Office SharePoint Server 2007 的快取>。

在任何伺服器或網站中,也務必要在授與網站存取權時遵循最低權限的準則:使用者應該只有他們需要使用的權限層級。第一步先使用標準群組 (如「成員」、「訪客」和「擁有人」),並控制網站層級的權限,以進行最簡單的管理。請將大部分使用者成員指派為「訪客」或「成員」群組。請將「擁有人」群組的人數設定為僅限您要允許可變更網站結構或變更網站設定與外觀的使用者。「成員」群組中的使用者預設都可以參與網站 (新增或移除項目或文件),但是無法變更網站的結構或變更網站設定與外觀。如果您需要進一步控管使用者能夠採取的動作,則可以建立其他 SharePoint 群組和權限層級。

如果包含在特定清單、文件庫、資料夾、項目或文件中的資料是需要更高安全性的機密資料,則可以將權限授與特定群組或個別使用者。不過,請注意並沒有方法可以檢視網站內清單、文件庫、資料夾、項目或文件特有的所有權限。這表示很難快速確認誰擁有安全物件的權限,也很難大量重設任何微調權限。

規劃權限繼承

當權限和已繼承權限具有明確階層時,就很容易管理權限。但在網站內的部分清單套用微調權限時,以及部分網站的子網站具有唯一權限而部分子網站具有已繼承權限時,則會更為困難。請盡可能安排網站和子網站以及清單和文件庫,讓它們可以共用大部分的權限。請將機密資料放到它們自己的清單、文件庫或子網站。

例如,管理具有下表所說明權限繼承的網站會較容易。

安全物件 描述 唯一或繼承的權限

SiteA

群組首頁

唯一

SiteA/SubsiteA

機密群組

唯一

SiteA/SubsiteA/ListA

機密資料

唯一

SiteA/SubsiteA/LibraryA

機密文件

唯一

SiteA/SubsiteB

群組共用專案資訊

繼承

SiteA/SubsiteB/ListB

非機密資料

繼承

SiteA/SubsiteB/LibraryB

非機密文件

繼承

相較之下,管理具有下表所說明權限繼承的網站,則較不容易。

安全物件 描述 唯一或繼承的權限

SiteA

群組首頁

唯一

SiteA/SubsiteA

機密群組

唯一

SiteA/SubsiteA/ListA

非機密資料

唯一但權限與 SiteA 相同

SiteA/SubsiteA/LibraryA

非機密文件,但具有一或兩份機密文件

繼承,具有文件層級的唯一權限

SiteA/SubsiteB

群組共用專案資訊

繼承

SiteA/SubsiteB/ListB

非機密資料,但具有一或兩個機密項目

繼承,具有項目層級的唯一權限

SiteA/SubsiteB/LibraryB

非機密文件,但具有內含機密文件的特殊資料夾

繼承,具有資料夾和文件層級的唯一權限

子網站指令碼

如果您的環境需要最高層級的內容與網站隔離,所採用的 Office SharePoint Server 網站結構設計方式,最好能降低使用連續 URL 命名空間的相關風險。Office SharePoint Server 網站 URL 命名空間預設設定可能會發生子網站指令碼問題,而讓惡意使用者得以在某個網站上執行踰越該使用者被授與權限層級的動作。這個問題之所以會存在,是因為 Office SharePoint Server 網站屬於安全性界限,在同名主機中任意數目的安全性界限可以彼此相鄰。因為網頁瀏覽器只認定主機名稱 (而不是網站) 為安全性界限,所以內容若是包含位於某個 Office SharePoint Server 網站的指令碼,可能會在某些情況下在其他網站上執行,只要這些網站是位於同名主機中。

Office SharePoint Server 會根據經過驗證之使用者的權限和群組成員資格來授權內容存取權。因此,代表某個使用者執行的指令碼可以有效執行該使用者允許執行的任何動作。下列範例說明可能產生的問題:

  • 使用者 A 和使用者 B 各都有自己的 Office SharePoint Server 網站集合:http://my/sites/UserA 和 http://my/sites/UserB。

  • 使用者 A 擁有自己網站的參與者權限,但是他沒有使用者 B 網站的權限。當使用者 A 瀏覽至使用者 B 的網站時,會收到「拒絕存取」的錯誤。

  • 不過,使用者 A 可能將包含惡意指令碼的文件上傳至自己網站,並提供使用者 B 讀取該文件的權限。如果使用者 B 檢視使用者 A 建立的文件,惡意指令碼可能會使用使用者 B 的認證而執行,而不發生警告。若在有許多網頁瀏覽器可用的情況下,指令碼不會跨越安全性界限,而且執行指令碼不會視為跨網域事件。

此問題之所以存在是因為使用者 B 的 Office SharePoint Server 網站和使用者 A 的 Office SharePoint Server 網站都在同名主機下。在這樣的網站結構下,使用者 B 和使用者 A 必須信任彼此不會嘗試執行指令碼攻擊。如果參與者群組無法彼此信任,應該將其網站分別置於不同主機名稱下。指令碼問題是 Office SharePoint Server 共同作業案例 (而非網際網路發佈或結構化入口網站案例) 中最重要的議題,因為惡意使用者必須有參與者存取權,才能執行子網站指令碼攻擊。

隨著 Office SharePoint Server 使用成長,特別是在大型組織內部網路的使用,以及隨著組織中多位使用者變成路徑式部署 (例如,http://my 或 http://corp) 某部分工作的參與者,能否信任該主機所有參與者可能充滿挑戰。特別是在使用自助網站架設的案例,以及子網站變成深層巢狀化的案例中。您可以設計 Office SharePoint Server 部署將這些問題減到最少。如需設計資訊架構的資訊,請參閱<決定網站的資訊架構>。

如需設計 Office SharePoint Server 網站集合、網站及子網站的資訊,請參閱<決定網站與子網站>。

如需其他安全性指導,請參閱 SharePoint 產品及技術的安全性資源中心 (英文) (https://go.microsoft.com/fwlink/?linkid=148056&clcid=0x404)。

使用以主機名稱命名的網站集合

使用以主機名稱命名的網站集合可讓單一網頁應用程式支援建立多個根層級網站集合,而提升網站和內容的安全性。例如,負責整個組織的管理員可以使用以主機名稱命名的網站集合,建立多個以網域名稱命名的網站。Windows SharePoint Services 3.0 支援在單一網頁應用程式中建立多個網域。這可讓您在同一個網頁應用程式的不同網站集合中放置多個網域,例如,http://UserB.collab.mycorp.com 和 http://UserB.collab.mycorp.com。不過,以此方式管理子網站指令碼問題時,需考慮下列問題:

  • 使用易記的主機名稱 (例如 http://UserB.collab.mycorp.com) 可能會造成 DNS 問題,因為您需要將所有易記主機名稱指向正確的 Office SharePoint Server 部署。只要在完整網域名稱中使用萬用字元 DNS 項目(例如 *.collab.mycorp.com),就能減輕此問題。

  • Office SharePoint Server 可支援自助架設及管理路徑式網站集合。部署以主機標題名稱命名的網站可能會增加網站佈建工作的操作負擔。如需自助網站架設的詳細資訊,請參閱<設定自助網站架設>。

如需以主機名稱命名的網站集合詳細資訊,請參閱<規劃主機名稱網站集合 (Office SharePoint Server)>。

將內容移動到不同主機名稱

如果您想要將現有內容移到不同主機名稱,請考慮下列準則:

  • 您可以使用如 [傳送至]、[其他位置]、[以總管檢視開啟] (用於文件) 或 [匯出至試算表],移動少量內容,包括文件庫和清單。

  • 若要移動較大量內容 (包括網站和網站集合),請考慮備份與還原內容。如需備份與還原內容的相關資訊,請參閱<使用內建工具備份與還原網站集合 (Office SharePoint Server 2007)>。

  • 對於較大量的資料,請考慮使用不同主機名稱來建立新網站集合。

  • 在架設此網站集合時,請考慮在網站原始位置同一層級上建立管理路徑。您可以藉由定義管理路徑,來指定 Web 應用程式 URL 命名空間中的哪些路徑要用於網站集合。這之所以很重要是因為 Office SharePoint Server 內容在許多案例中都使用伺服器相對路徑。在將內容還原至新位置時,Office SharePoint Server 可以修復 URL 的主機名稱,但是此時若有層級不符問題,可能會導致還原作業失敗。如需管理路徑的詳細資訊,請參閱<定義管理的路徑>。

工作表

網站和內容安全性工作表 (https://go.microsoft.com/fwlink/?linkid=73135&clcid=0x404) 中,請填入網站階層,然後列出每個階層層級需要的權限和任何權限繼承。

下載本書

本主題隨附於下列可下載的叢書中,以便於閱讀與列印:

請參閱 Office SharePoint Server 2007 可下載的內容 上提供的完整叢書清單。