below: Tip |
---|
Open a Windows PowerShell session as administrator. |
Server Requirements: Anchor |
---|
ServerReq | ServerReq | Configure the station to receive remote commands:
No Format |
---|
Enable-PSRemoting –Force |
Enable Credential Security Service Provider (CREDSSP) authentication on the local server:
No Format |
---|
Enable-WSManCredSSP –Role Server |
Increase the maximum number of PS shells per user to 25:
No Format |
---|
winrm set winrm/config/winrs '@{MaxShellsPerUser="25"}' |
Increase the max memory per shell to 600MB:
No Format |
---|
winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="600"}' |
Return all users who have the SharePoint_Shell_Access role:
No Format |
---|
Get-SPShellAdmin |
Center |
---|
Highlight |
---|
If the desired user is not listed, you can add a specified service account to the SharePoint_Shell_Access role for a given database: |
Note |
---|
Replace Domain\Username with the desired user and ContentDatabaseName with the desired content database. |
No Format |
---|
Enter Add-SPShellAdmin -UserName Domain\Username -Database (Get-SPContentDatabase -Identity “ContentDatabaseName”) |
Info |
---|
You will need to run this command for all content databases for the user(s) who need access. |
Highlight |
---|
To grant access to all Content Databases: |
No Format |
---|
Get-SPDatabase | Add-SPShellAdmin DOMAIN\UserName |
|
Return all users who have the SharePoint_Shell_Access role and confirm the desired user is now listed:
No Format |
---|
Get-SPShellAdmin |
Open the permissions dialog box and enter: Anchor |
---|
Step7 | Step7 | No Format |
---|
Set-PSSessionConfiguration -Name Microsoft.PowerShell32 –ShowSecurityDescriptorUI |
Add the desired user(s) and ensure they have Read and Execute permissions.Click OK to save the changes.Once the server requirements have been met, please review the Client Requirements.
Client Requirements: Anchor |
---|
ClientReq | ClientReq | Enable Credential Security Service Provider (CREDSSP) authentication on the local client machine:
No Format |
---|
Enable-WSManCredSSP -Role client -DelegateComputer “SharePointServerName” |
Open a credentials prompt box:
No Format |
---|
$cred=get-Credential |
Enter an administrators account (or the admin account you worked with in the Server Requirements) to run the rest of the PowerShell commands with this account.Create a new remote session to the SharePointServerName using the authentication type CredSSP and the credentials previously entered:
No Format |
---|
$s=new-PSsession “SharePointServerName” - authentication credssp -credential $cred |
Warning |
If this fails with an "access denied" error, re-run step 7 in the Server Requirements (go to) to enable configuration of the x64 PowerShell
Load the SharePoint snap-in to the current session to allow SharePoint related scripts to be executed:
No Format |
---|
Invoke-Command -Session $s -ScriptBlock {Add-PSSnapin Microsoft.SharePoint.PowerShell;} |
Return all content databases in your SharePoint farm (which ensures you have access):
No Format |
---|
Invoke-Command -Session $s -ScriptBlock {get-SPContentDatabase} |
Return all SharePoint service instances (which ensures you have access):
No Format |
---|
Invoke-Command -Session $s -ScriptBlock {get-spserviceinstance} |
To attempt to use the PS Session to ensure connectivity between the two machines
No Format |
---|
Enter-PSSession -session $s |
Tip |
---|
You will now see the server(s) name in brackets [ ] PS: c:\users\someuser\documents.
Example: [sp2013-app.fabrikaminc.local]: PS C:\Users\adamb\Documents>