在 SharePoint Server 中規劃最低權限管理
適用於:2013 Subscription Edition SharePoint in Microsoft 365
最低權限管理的概念是將完成授權工作需要的最低權限指派給使用者。 最低權限管理的目標是設定及協助維護環境的安全控制。 結果是,服務執行所在的每個帳戶只會被授與必要資源的存取權。
Microsoft建議使用最低許可權的系統管理來部署 SharePoint Server。 實作最低許可權的系統管理可能會導致營運成本增加,因為可能需要其他資源才能維持此層級的系統管理。 此外,針對安全性問題進行疑難解答的能力也會變得更複雜。
簡介
組織可實作最低權限管理來獲得比一般建議更高的安全性。 由於維護最低許可權管理的資源成本,只有一小部分的組織需要此強化的安全性層級。 有某些部署可能需要此增強的安全性層級,包括政府機構、安全性組織及金融服務業組織。 最低許可權環境的實作不應與最佳做法混淆。 在最低許可權的環境中,系統管理員會與其他提高安全性層級一起實作最佳做法。
帳戶和服務的最低權限環境
若要規劃最低權限管理,您必須考量數個帳戶、角色和服務。 其中一些帳戶、角色和服務適用於 SQL Server,部分則適用於 SharePoint Server。 當系統管理員鎖定其他帳戶和服務時,每日營運成本可能會增加。
SQL Server 角色
在 SharePoint Server 環境中,可能會將下列兩個 SQL Server 伺服器層級角色授與數個帳戶。 在最低權限的 SharePoint Server 環境中,我們建議您僅將這些權限授與執行 Microsoft SharePoint Foundation 工作流程計時器服務的帳戶。 一般而言,計時器服務會在伺服器陣列帳戶下執行。 對於日常作業,我們建議您從 SharePoint 管理所使用的所有其他帳戶中移除下列兩個 SQL Server 伺服器層級角色:
Dbcreator - 可建立、改變、捨棄及還原任何資料庫的 dbcreator 固定伺服器角色的成員。
Securityadmin - 管理登入及其屬性的 securityadmin 固定伺服器的成員。 他們可「授與」、「拒絕」和「撤銷」伺服器層級權限。 如果他們有資料庫的存取權,也可以「授與」、「拒絕」和「撤銷」資料庫層級權限。 此外,他們也能重設 SQL Server 登入的密碼。
注意事項
授與資料庫引擎存取權及設定用戶權力的能力,可讓 securityadmin 指派大部分的伺服器許可權。 您應該將 securityadmin 角色視為等同於 sysadmin 角色。
如需 SQL Server 伺服器層級角色的詳細資訊,請參閱 伺服器層級角色。
如果移除其中一或多個 SQL Server 角色,您可能會在 管理中心 網站中收到「非預期」錯誤訊息。 此外,您可能會在統一登入服務 (ULS) 記錄檔中收到下列訊息:
System.Data.SqlClient.SqlException... <資料庫資料庫>中的<作業類型>許可權遭拒。 數據表數據 <表>
隨著可能顯示的錯誤訊息,您可能無法執行下列任何工作:
還原伺服器陣列的備份,因為您無法寫入至資料庫
佈建服務執行個體或 Web 應用程式
設定受管理的帳戶
變更 Web 應用程式的受管理帳戶
在需要 管理中心 網站的任何資料庫、受管理帳戶或服務上執行任何動作
在特定情況下,資料庫管理員 (DBA) 可能想要獨立於 SharePoint Server 管理員之外操作,以及建立和管理所有資料庫。 在安全性需求和公司原則需要不同管理員角色的 IT 環境中,時常會發生這種情況。 伺服器陣列管理員會向 DBA 提供 SharePoint Server 資料庫需求,DBA 接著建立必要的資料庫和設定伺服器陣列所需要的登入。
依預設,DBA 已完成存取 SQL Server 執行個體,但需要其他權限才能存取 SharePoint Server。 DBA 一般會使用 Windows PowerShell 3.0 來新增、建立、移動或重新命名 SharePoint 資料庫,因此他們必須是下列帳戶的成員:
SQL Server 執行個體上的 Securityadmin 固定伺服器角色。
SharePoint 陣列中所有資料庫上的 Db_owner 固定資料庫角色。
執行 PowerShell Cmdlet 的電腦上的管理員群組。
此外,DBA 可能必須是 SharePoint_Shell_Access 角色的成員才能存取 SharePoint 內容資料庫。 在某些情況下,DBA 可能會想要將安裝程式使用者帳戶新增至 db_owner 角色。
SharePoint Server 的角色和服務
一般而言,您應該移除從 SharePoint Server 服務帳戶建立新資料庫的能力。 在 SQL Server 實例上,沒有 SharePoint Server 服務帳戶應該具有系統管理員角色,而且執行 SQL Server 之伺服器上的本機系統管理員不應該是 SharePoint Server 服務帳戶。
如需詳細資訊,請參閱 SharePoint Server 2016 Server 中的帳戶權限及安全性設定。
如需 SharePoint Server 2013 的帳戶資訊,請參閱 SharePoint 2013 中的帳戶權限及安全性設定。
下列清單提供鎖定其他 SharePoint Server 角色和服務的詳細資訊:
SharePoint_Shell_Access role
當您移除此 SQL Server 角色時,會移除將項目寫入設定和內容資料庫的能力,以及使用 Microsoft PowerShell 執行任何工作的能力。 如需此角色的詳細資訊,請參閱 Add-SPShellAdmin。
SharePoint 計時器服務 (SPTimerV4)
建議您不要限制授與此服務執行所在帳戶的默認許可權,也不要停用此帳戶。 相反地,請使用安全的用戶帳戶,其密碼並不廣泛已知,並讓服務保持執行狀態。 依預設,安裝 SharePoint Server 時會安裝此服務,並維護設定快取資訊。 如果設定停用服務類型,您可能會遇到下列情況:
未執行計時器作業
未執行狀況分析器規則
維護及伺服器陣列設定將過期
SharePoint Administration service (SPAdminV4)
此服務會執行自動化變更,需要在伺服器上擁有本機管理員權限才能執行。 當服務未執行時,您必須手動處理伺服器層級的系統管理變更。 建議您不要限制授與此服務執行所在帳戶的默認許可權,也不要停用此帳戶。 相反地,請使用安全的用戶帳戶,其密碼並不廣泛已知,並讓服務保持執行狀態。 如果設定停用服務類型,您可能會遇到下列情況:
未執行管理計時器作業
未更新 Web 設定檔案
未更新安全性和本機群組
未寫入登錄值和機碼
可能無法啟動或重新啟動服務
可能無法完成服務佈建
SPUserCodeV4 Service
此服務可讓網站集合管理員將沙盒化解決方案上傳至方案庫。 如果您未使用沙箱化解決方案,則可停用此服務。
對 Windows 權杖服務的宣告 (C2WTS)
預設會停用此服務。 使用 Excel Services、PerformancePoint Services 或 SharePoint 共用服務進行部署時,可能需要 C2WTS 服務,這些服務必須在 SharePoint 安全性令牌和 Windows 型身分識別之間進行轉譯。 例如,當您設定 Kerberos 限制委派來存取外部資料來源時可使用此服務。 如需 C2WTS 的詳細資訊,請參閱規劃 SharePoint Server 的 Kerberos 的驗證。
下列功能可能會在某些情況下遇到其他徵兆:
Backup and restore
如果您已移除資料庫權限,則可能無法從備份執行還原。
升級
升級程式會正確啟動,但如果您沒有適當的資料庫許可權,則會失敗。 如果您的組織已處於最低權限環境,則因應措施是移至最佳作法環境以完成升級,然後移回最低權限環境。
更新
將軟體更新套用至伺服器數位的能力會成功進行設定資料庫的架構,但在內容資料庫和服務上會失敗。
最低權限環境的其他考量事項
除了先前的考量以外,您可能必須考量更多操作。 下列是不相容的清單。 請自行決定選擇使用項目:
安裝程式使用者帳戶 - 此帳戶是用於設定陣列中的每一台伺服器。 帳戶必須是 SharePoint Server 陣列中每一台伺服器的管理員群組成員。 如需此帳戶的其他資訊,請參閱 在 SharePoint Server 中初次部署管理帳戶和服務帳戶。
當您建置新的 SharePoint 伺服器陣列,且以 為基礎的組建具有 2022 年 10 月 CU 或新的匯入組建程式時,您會使用最低許可權的安全性模型。 在伺服器數位中的第一部伺服器上完成 psconfig 之後,在執行伺服器數位設定精靈或布建其他元件之前,必須執行下列命令以確保存取 SharePoint 資料庫:
Get-SPDatabase | %{$_.GrantOwnerAccessToDatabaseAccount()}
同步處理帳戶 - 針對 SharePoint Server,此帳戶可用來連線到目錄服務。 建議您不要限制授與此服務執行所在帳戶的默認許可權,也不要停用此帳戶。 相反地,請使用安全的用戶帳戶,其密碼並不廣泛已知,並讓服務保持執行狀態。 此帳戶也需要 AD DS 的復寫目錄變更許可權,此許可權可讓帳戶讀取 AD DS 物件,以及探索已在網域中變更的 AD DS 物件。 [授與複寫目錄變更] 許可權不會讓帳戶建立、變更或刪除 AD DS 物件。
我的網站主機應用程式集區帳戶 - 這是執行 我的網站 應用程式集區的帳戶。 若要設定此帳戶,您必須是伺服器陣列管理員群組的成員。 您可以限制此帳戶的權限。
內建使用者群組 - 移除內建使用者安全性群組或變更權限可能會產生非預期的結果。 建議您不要將許可權限制為任何內建帳戶或群組。
Group permissions - By default the WSS_ADMIN_WPG SharePoint group has read and write access to local resources. 需要 下列WSS_ADMIN_WPG 檔案系統位置 %WINDIR%\System32\drivers\etc\Hosts 和 %WINDIR%\ Tasks,SharePoint Server 才能正常運作。 If other services or applications are running on a server, you might consider how they access the Tasks or Hosts folder locations. For additional information about account settings for SharePoint Server, see Account permissions and security settings in SharePoint Server 2016.
如需 SharePoint Server 2013 帳戶的詳細資訊,請參閱 SharePoint Server 2013 中的帳戶權限及安全性設定。
變更服務的權限 - 服務權限變更可能會產生非預期的結果。 例如,如果下列登錄機碼 HKLM\System\CurrentControlSet\Services\PerfProc\Performance\Disable Performance Counters 具有值 0,則將停用「使用者程式碼主機」服務,從而導致沙箱式解決方案停止運作。