Add-SPShellAdmin
向指定数据库的 SharePoint_Shell_Access 角色添加用户。
语法
Add-SPShellAdmin
[-UserName] <String>
[-AssignmentCollection <SPAssignmentCollection>]
[-Confirm]
[-Database <SPDatabasePipeBind>]
[-WhatIf]
[<CommonParameters>]
说明
在运行此 cmdlet 以将用户添加到 SharePoint_Shell_Access 角色中时,您必须拥有 SQL Server 实例上 securityadmin 固定服务器角色和所有受影响数据库上 db_owner 固定服务器角色中的成员身份,并且在本地计算机上必须拥有本地管理权限。
此 cmdlet 仅用于使用 Windows 身份验证的数据库。 使用 SQL 身份验证的数据库不必使用此 cmdlet;如果使用可能会发出错误消息。
按照以下操作,使用 Add-SPShellAdmin cmdlet 将用户添加到 SharePoint_Shell_Access 角色中:
--如果您仅指定用户,用户将添加到服务器场配置数据库的角色中。
--如果您使用 database 参数,用户将添加到服务器场配置数据库、管理中心内容数据库和指定数据库的角色中。 由于大多数管理操作都需要访问管理中心内容数据库,因此使用 database 参数是首选的方法。
在将用户添加到 SharePoint_Shell_Access 角色后,该用户将添加到所有 Web 服务器上的 WSS_Admin_WPG 组中。 如果目标数据库没有 SharePoint_Shell_Access 角色,则会自动创建该角色。
若要将 Windows PowerShell用于 SharePoint 产品,用户必须是配置数据库中SharePoint_Shell_Access角色的成员,并且必须是安装 SharePoint 产品的计算机上的 WSS_ADMIN_WPG 本地组的成员。
但是,运行此 cmdlet 的结果是,使用 UserName 参数指定的用户将在受影响的数据库上具有 SPDataAccess 角色(如果存在),或者db_owner角色(如果 SPDataAccess 角色不存在)。如上所述。 因此,您应该仔细规划向哪些用户授予此访问权限。
因此,您应该仔细规划向哪些用户授予此访问权限。
有关 SharePoint 产品Windows PowerShell的权限和最新信息,请参阅 中的https://go.microsoft.com/fwlink/p/?LinkId=251831联机文档。
示例
-------------------示例 1-------------------------
Add-SPShellAdmin -UserName CONTOSO\User1
此示例将名为 User1 的新用户仅添加到服务器场配置数据库中的 SharePoint_Shell_Access 角色,同时确保将该用户添加到服务器场的每台服务器上的 WSS_Admin_WPG 本地组。
-------------------示例 2-------------------------
Add-SPShellAdmin -UserName CONTOSO\User1 -database 4251d855-3c15-4501-8dd1-98f960359fa6
此示例通过将数据库 GUID 传递到 cmdlet,从而将名为 User1 的新用户同时添加到指定内容数据库和配置数据库的 SharePoint_Shell_Access 角色中。
-------------------示例 3-------------------------
Get-SPDatabase | Where-Object {$_.WebApplication -like "SPAdministrationWebApplication"} | Add-SPShellAdmin CONTOSO\User1
此示例将名为 User1 的新用户同时添加到指定管理中心内容数据库和配置数据库的 SharePoint_Shell_Access 角色。
-------------------示例 4-------------------------
Get-SPDatabase | ?{$_.Name -eq "WSS_Content"} | Add-SPShellAdmin -Username CONTOSO\User1
此示例通过将数据库名称传递到 cmdlet,从而将名为 User1 的新用户同时添加到指定内容数据库和配置数据库的 SharePoint_Shell_Access 角色中。
参数
-AssignmentCollection
管理对象以便正确进行处理。 使用 SPWeb 或 SPSite 等对象可能会耗用大量内存,而且在 Windows PowerShell 脚本中使用这些对象需要正确管理内存。 通过使用 SPAssignment 对象,可以将对象分配给变量,然后在不需要这些对象时对它们进行处理,以释放内存。 在使用 SPWeb、SPSite 或 SPSiteAdministration 对象时,如果不使用分配集合或 Global 参数,则会自动处理这些对象。
在使用 Global 参数时,所有对象均包含在全局存储中。 如果未立即使用对象,或未通过使用 Stop-SPAssignment 命令来处理对象,则可能会发生内存不足的情况。
Type: | SPAssignmentCollection |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-Confirm
执行命令前,看到确认提示。
有关详细信息,请键入以下命令:get-help about_commonparameters
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-Database
指定要向其添加用户的 SharePoint_Shell_Access 角色所属的数据库或数据库对象的 GUID。 如果未指定 database 参数,则使用配置数据库。 将始终包含服务器场配置数据库,即使指定了其他数据库也是如此。
Type: | SPDatabasePipeBind |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-UserName
指定要添加到目标数据库的 SharePoint_Shell_Access 角色的用户名。
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-WhatIf
显示一条描述命令作用的消息,而不执行命令。
有关详细信息,请键入以下命令:get-help about_commonparameters
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |