Add-SPShellAdmin

將使用者新增至指定資料庫的 SharePoint_Shell_Access 角色。

Syntax

Add-SPShellAdmin
   [-UserName] <String>
   [-AssignmentCollection <SPAssignmentCollection>]
   [-Confirm]
   [-database <SPDatabasePipeBind>]
   [-WhatIf]
   [<CommonParameters>]

Description

當您執行此 Cmdlet,將使用者新增至 SharePoint_Shell_Access 角色時,您必須是 SQL Server 執行個體的 securityadmin 固定伺服器角色的成員、所有受影響之資料庫的 db_owner 固定資料庫角色的成員,以及擁有本機電腦的本機系統管理權限。

此 Cmdlet 僅適用於利用 Windows 驗證的資料庫。 使用 SQL 驗證的資料庫不需要使用此 Cmdlet;事實上,這樣做會產生錯誤訊息。

請按照以下步驟,利用 Add-SPShellAdmin Cmdlet,將使用者新增到 SharePoint_Shell_Access 角色:

--若您只指定使用者,則會將使用者新增至伺服器陣列設定資料庫的角色中。

--若您使用 database 參數,則會將使用者新增至伺服器陣列設定資料庫、管理中心內容資料庫以及指定之資料庫的角色中。 建議您使用 database 參數,因為大部分的系統管理作業都需要存取管理中心內容資料庫。

當使用者新增到 SharePoint_Shell_Access 角色時,使用者便會新增到所有網頁伺服器中的 WSS_Admin_WPG 群組。 如果目標資料庫沒有 SharePoint_Shell_Access 角色,則會自動建立角色。

若要使用 sharePoint 產品Windows PowerShell,使用者必須是設定資料庫上SharePoint_Shell_Access角色的成員,以及安裝 SharePoint 產品之電腦上WSS_ADMIN_WPG本機群組的成員。

不過,執行此 Cmdlet 的結果是,使用 UserName 參數指定的使用者,如果 SPDataAccess 角色存在,就會擁有 SPDataAccess 角色,如果 SPDataAccess 角色不存在,則會在受影響的資料庫上db_owner角色,如上所述。 因此,應該謹慎規劃可授與哪些使用者這個使用權。

因此,應該謹慎規劃可授與哪些使用者這個使用權。

如需 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 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-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 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-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 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-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 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-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 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019