In a previous post, I showed how to create a Remote PowerShell shortcut for Office 365 using Remote PowerShell (RPS), to save you from having to type in the remote session every time you connect.
Since Microsoft has deprecated RPS in favor of REST API, I've created a new script that will import the needed sessions and connect to the following M365 services in one shot:
Azure ADSharePoint Online
Exchange Online
Security & Compliance Center
Teams
First, you'll need the latest EXO (Exchange Online) module - 3.3.0 at the time of this writing - in order to connect to Security & Compliance, which you can get here.
Next, set your PowerShell execution policy - I use Unrestricted but you can use RemoteSigned:
Set-ExecutionPolicy Unrestricted
Now, we'll grab the other required modules:
MSOL
PowerShell Gallery | MSOnline 1.1.183.66
SharePoint
PowerShell Gallery | Microsoft.Online.SharePoint.PowerShell 16.0.24009.12000
Teams
Install .NET 4.7.2 or higher
Run the two following cmdlets:
Install-Module -Name PowerShellGet -Force -AllowClobber
Install-Module -Name MicrosoftTeams -Force -AllowClobber
**Note** We're using MSOL because it's more comprehensive than AzureAD
**Note** Security & Compliance uses the EXO module, so nothing is needed for that.
Next, copy the following block and paste it into Notepad:
$orgName="domain.com"
#Azure Active Directory
Connect-MsolService
#SharePoint Online
Connect-SPOService -Url https://exchangeitup-admin.sharepoint.com
#Security & Compliance Center
Import-Module ExchangeOnlineManagement
Connect-IPPSSession -UserPrincipalName $acctName
#Exchange Online
Connect-ExchangeOnline -UserPrincipalName $acctName -ShowProgress $true
#Teams and Skype for Business Online
Import-Module MicrosoftTeams
Connect-MicrosoftTeams
Save it as a .ps1 with a name like Connect-365.ps1 to somewhere like C:\Scripts
Next, create a PowerShell shortcut anywhere, like on your Desktop:
Right-click the Desktop > New > Shortcut
In the location field, enter:
Powershell.exe
Click Next
Give it a name like O365RemotePS and click Finish.
In the Target field, add the following to the end of the line:
-NoExit -File "C:\Scripts\Connect-365.ps1"
It will look like so:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit -File "C:\Scripts\Connect-365.ps1"
Click OK.
Run your new shortcut as your admin user, and you'll get a windows creds prompt and then the account picker for your Microsoft 365 organization.
**Note** You will get an account picker for each service depending on your security config in M365.
**Note** Enter creds in the username@orgname.com format.
Once it starts the remote session, you'll be able to run your M365 cmdlets.
No comments:
Post a Comment