Jak podłączyć PowerShell do Office 365 i Exchange Online

PowerShell to świetny sposób na zarządzanie środowiskiem Office 365. Pozwala zautomatyzować wiele zadań, pisząc własne skrypty lub zmieniając ustawienia za pomocą jednego polecenia. Teraz pierwszym krokiem jest oczywiście podłączenie PowerShell do Office 365.

istnieją dwa sposoby łączenia się z Office 365 w PowerShell. Microsoft Azure Active Directory Module for Windows Powershell (MSOnline) i nowszy Azure Active Directory PowerShell for Graph (AzureAD).

będziesz potrzebował obu w momencie pisania, AzureAD jest następcą MSOnline, ale nie wszystkie funkcjonalności są dostępne w nowszym module AzureAD.

instalacja modułów PowerShell

najpierw zainstalujemy oba moduły PowerShell. Możesz używać ich obu razem w systemie bez żadnych problemów.

Krok 1-zainstaluj moduł AzureAD w PowerShell

Otwórz PowerShell w trybie administratora (Windows key + X i wybierz Windows PowerShell (Admin))
wpisz następujące polecenie:

# This will install the AzureAD module from the PowerShell Gallery, you might get a warning that the # source is untrusted, but you can safely type Y and press enter.Install-Module AzureAD

Krok 2 – Zainstaluj asystenta logowania Microsoft Online Services

moduł MSOnline wymaga nieco więcej pracy. Najpierw pobierz i zainstaluj asystenta logowania do Usług Microsoft Online Services.

następnie zainstalujemy moduł w PowerShell. Uruchom następujące polecenie w PowerShell:

Install-Module MSOnline

podłączając PowerShell do Office 365

mamy teraz zainstalowane oba moduły, więc możemy teraz podłączyć PowerShell do Office 365. Większość dokumentacji jest nadal napisana dla modułu MSOnline, więc zacznijmy od tego.

aby połączyć się z usługą MSOnline, należy uruchomić polecenie Connect-MSolService, co spowoduje wyświetlenie standardowego pola podpisu Microsoft dla poświadczeń Office 365.

możesz teraz używać cmdletów MSol w PowerShell, przegląd cmdletów można znaleźć tutaj w dokumentach Microsoft

łączenie z AzureAD

łączenie z nowym Azureadem jest prawie takie samo, wystarczy uruchomić polecenie Connect-AzureAD. Zostaniesz poproszony o zalogowanie się za pomocą konta Microsoft, tak jak w przypadku MSol. Przegląd cmdletów z modułu AzureAD można znaleźć tutaj.

Powershell Połącz się z Exchange Online

napisałem zaktualizowany artykuł na temat łączenia Exchange Online za pomocą nowego modułu Exchange Online V2. Upewnij się, że najpierw przeczytałeś ten artykuł!

łączenie się z Exchange Online jest trochę inne, nie musisz instalować modułu do tego. Ale zamierzamy nawiązać połączenie z Exchange Online z ukrytym remotingiem.

za pomocą poniższego kodu tworzymy obiekt poświadczenia, budujemy sesję i importujemy go do naszej sesji PowerShell:

jeśli używasz MFA (Multi-Factor Authentication), nie możesz użyć metody Get-Credential.

teraz musisz rozwiązać ten problem, użyć hasła aplikacji lub użyć modułu zdalnego PowerShell Exchange Online.

wolę używać hasła aplikacji, dzięki czemu możesz szybko skonfigurować połączenie ze wszystkimi usługami Office 365 za pomocą PowerShell.

używanie hasła do aplikacji

MFA jest świetnym dodatkiem bezpieczeństwa, ale może być uciążliwe, jeśli chodzi o automatyzację rzeczy za pomocą PowerShell. Rozwiąż ten problem możesz utworzyć hasło aplikacji w Office 365. Jest to silne hasło, którego możesz użyć w aplikacji, która nie obsługuje MFA.

  1. Zaloguj się na Office 365 i goto https://portal.office.com/account/#security.
  2. Wybierz dodatkową weryfikację zabezpieczeń
  3. wybierz Utwórz hasła aplikacji i zarządzaj nimi (ostatnia linia)
  4. Utwórz nowe hasło aplikacji dla PowerShell

teraz, jeśli chcesz połączyć Office 365 z PowerShell, możesz wykonać następujące czynności:

# Store your credentials - Enter your username and the app password$Cred = Get-Credential# Connect to MsolConnect-MsolService -Credential $Cred# Connect to AzureAdConnect-AzureAD -Credential $Cred# Connect to Exchange Online$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $Cred -Authentication Basic -AllowRedirectionImport-PSSession $Session -DisableNameChecking

jak widać, musisz się zalogować tylko raz. Możemy użyć tego samego obiektu poświadczenia dla każdego połączenia.

jeśli utworzono również kilka skryptów PowerShell, których można użyć do łatwego łączenia się ze wszystkimi usługami Office 365. Znajdziecie je w mojej galerii TechNet. Mają możliwość przechowywania hasła aplikacji w bezpiecznym łańcuchu na komputerze, dzięki czemu można w pełni zautomatyzować Skrypty.

wniosek

połączenie z Office 365 za pomocą PowerShell jest naprawdę proste. Jeśli używasz MFA, hasło aplikacji jest najwygodniejszym sposobem.

kiedy skończysz z Exchange Online, zawsze upewnij się, że zamykasz sesję za pomocą Remove-PSSession $Session.

0 akcje

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

Previous post 10 typowych problemów HR( i jak je rozwiązać)
Next post Dlaczego bieganie i kulturystyka są świetnym połączeniem dla zysków