Created
May 18, 2020 22:19
-
-
Save domkirby/814fc4dc2a371e21cc422404c1839119 to your computer and use it in GitHub Desktop.
A function that checks for the new Exchange Online Management Shell and will use it if it's available. Otherwise, it falls back to the old connector, but with a warning.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function Connect-EOCustom { | |
if(Get-Command Connect-ExchangeOnline -ErrorAction SilentlyContinue) { | |
#The new module is installed | |
Write-Host "You have the modern management shell installed, it will be used to connect to EO!" -ForegroundColor Green; | |
Import-Module ExchangeOnlineManagement; | |
Connect-ExchangeOnline; | |
} else { | |
#the new module is not installed | |
Write-Host "NOTICE: You are not using the modern management shell. The old shell will soon be deprecated, but the script will continue for now." -ForegroundColor Yellow; | |
Write-Host "It is strongly recommended that you install the new shell using Install-Module -Name ExchangeOnlineManagement" -ForegroundColor Yellow; | |
Pause; | |
$UserCredential = Get-Credential; | |
try { | |
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection | |
Import-PSSession $Session; | |
} catch { | |
Write-Host "Couldn't connect to Exchange Online." -ForegroundColor red; | |
Pause; | |
exit; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment