在 SharePoint Server 中配置备份和还原权限
**上一次修改主题:**2017-10-06
**摘要:**了解如何在 SharePoint Server 2016 和 SharePoint 2013 中配置备份和还原操作权限。
可以使用 SharePoint 管理中心网站或 Microsoft PowerShell 配置 SharePoint Server 的备份和还原权限。使用的备份工具取决于已部署的环境类型、备份计划要求以及您与组织达成的服务级别协议。
本文内容:
开始之前
SharePoint Server 中 SPTimerV4 定时服务和 SQL Server 帐户的权限
在管理中心内运行备份和还原操作所需的组成员身份
设置用于从 Windows PowerShell 运行 SharePoint 备份和还原操作的权限
开始之前
在备份或还原 SharePoint Server 之前,必须确保运行备份或还原操作的定时服务帐户、SQL Server 服务帐户和用户具有正确权限,或者是正确 Windows 安全组或 SharePoint 组的成员。首次部署 SharePoint Server 时,必须配置这些权限和组成员身份。在将新的服务器场组件添加到环境中时,或者要添加将执行备份和还原操作的用户,必须更新这些权限和组成员身份。
SharePoint Server 中 SharePoint 定时服务和 SQL Server 帐户的权限
SharePoint Server 中的 SharePoint 定时服务和 SQL Server 服务帐户代表用户执行备份和还原操作。这些服务帐户要求具有对任何备份文件夹的“完全控制”权限。
在管理中心中运行备份和还原操作所需的组成员身份
必须确保使用管理中心对服务器场和服务器场组件进行备份或还原的所有用户帐户都拥有下表中介绍的组成员身份。
服务器场组件 | 本地计算机上的 Administrators 组的成员 | SharePoint 组“Farm Administrators”的成员 |
---|---|---|
Farm |
是 |
否 |
服务应用程序 |
必需 |
否 |
内容数据库 |
必需 |
否 |
网站集 |
否 |
必需 |
网站、列表、文档库 |
否 |
必需 |
设置用于从 PowerShell 运行 SharePoint 备份和还原操作的权限
必须确保使用 PowerShell 备份或还原服务器场和服务器场组件的所有用户帐户都添加到指定数据库的 SharePoint_Shell_Access 角色,并拥有本节后面的表中所介绍的权限。
可以运行 Add-SPShellAdmin cmdlet 向此角色添加用户帐户。必须为每个用户帐户都运行该命令。此外,还必须为要授予其访问权限的所有数据库都运行该命令。
备注
您只需授予用于备份和还原特定服务器场组件的用户帐户访问权限一次。仅当在向环境中添加新的服务器场组件时,或要添加用户以执行备份和还原操作时,才必须再次执行此任务。
重要
Add-SPShellAdmin cmdlet 授予 SPDataAccess 角色,但这并不足以完成还原操作。这是因为 restore-spsite cmdlet 使用直接插入语句添加内容,而不是容纳其他交互活动的存储过程。Add-SPShellAdmin cmdlet 在 SharePoint 2010 中正常工作,因为它在 SPDataAccess 架构中添加了 dbo 权限。对于 SharePoint Server 2016 和 SharePoint 2013,需要有 db_owner 固定的数据库角色权限,才能使用 SharePoint 命令行管理程序 完成还原操作。
使用 PowerShell 在 SharePoint_Shell_Access 角色中添加或删除用户的具体步骤
确认您具有以下成员身份:
SQL Server 实例上的 securityadmin 固定服务器角色。
要更新的所有数据库上的 db_owner 固定数据库角色。
运行 PowerShell cmdlet 的服务器上的 Administrators 组。
管理员可以使用 Add-SPShellAdmin cmdlet 授予使用 SharePoint Server cmdlet 的权限。
备注
如果您不具有这些权限,请联系您的安装管理员或 SQL Server 管理员来请求权限。有关 PowerShell 权限的其他信息,请参阅 Add-SPShellAdmin。
启动 SharePoint 命令行管理程序。
在 PowerShell 命令提示符处,键入以下命令:
Add-SPShellAdmin -Username <User account> -Database <Database ID>
其中:
- <Database ID> 是分配给数据库的 GUID。
若要向服务器场中的所有数据库添加用户帐户,请键入以下命令:
ForEach ($db in Get-SPDatabase) {Add-SPShellAdmin -Username <User account> -Database $db}
其中:
- <User account> 是要添加其帐户的用户。
若要从服务器场中的所有数据库移除用户帐户,请键入以下命令:
ForEach ($db in Get-SPDatabase) {Remove-SPShellAdmin -Username <User account> -Database $db}
其中:
- <User account> 是要删除其帐户的用户。
若要查看当前添加到服务器场中的数据库的用户帐户,请键入以下命令:
ForEach ($db in Get-SPDatabase) {Get-SPShellAdmin -Database $db}
有关详细信息,请参阅 Add-SPShellAdmin。
备注
我们建议您在执行命令行管理任务时使用 Windows PowerShell。Stsadm 命令行工具已被弃用,仍然包含该工具是为了支持与之前产品版本的兼容性。
您可能还必须使用 PowerShell 向运行备份或还原操作的用户授予其他权限。下表显示了所需权限。
服务器场组件 | 本地计算机上的 Administrators 组的成员 | SharePoint 组“Farm Administrators”的成员 | 对备份文件夹的完全控制 |
---|---|---|---|
Farm |
是 |
否 |
必需 |
服务应用程序 |
必需 |
否 |
必需 |
内容数据库 |
必需 |
否 |
必需 |
网站集 |
否 |
必需 |
必需 |
网站、列表、文档库 |
必需 |
否 |
必需 |
See also
在 SharePoint Server 中规划备份和恢复
在 SharePoint Server 中准备备份和还原服务器场
SharePoint Server 中的备份和恢复概述