2025-12-08
Używanie Managed Identity z PowerShell dla Microsoft Graph

W miarę jak firmy coraz bardziej polegają na Microsoft 365, automatyzacja zadań administracyjnych staje się niezbędna. Integracja PowerShell + Graph API pozwala zwiększyć wydajność i zaoszczędzić cenny czas. Ta potężna kombinacja udostępnia solidne możliwości zarządzania, które usprawniają działanie.
Wielu użytkowników napotyka jednak trudności. Na przykład niektóre kluczowe funkcje nie mają udokumentowanych punktów końcowych, co komplikuje automatyzację. Dodatkowo starsze interfejsy API mogą prowadzić do cichych błędów, utrudniając utrzymanie skryptów. Nie martw się! Ten wpis rozbije te złożone zagadnienia na łatwe, praktyczne kroki, prowadząc Cię przez proces z jasnymi rozwiązaniami.
Najważniejsze wnioski
- Zintegruj PowerShell z Graph API, aby automatyzować zadania w Microsoft 365 i zwiększyć wydajność.
- Upewnij się, że Twój system spełnia wymagania wstępne, takie jak PowerShell 7 lub nowszy oraz najnowszy moduł Microsoft Graph, aby zapewnić sprawne działanie.
- Zrozum uprawnienia i zakresy, aby kontrolować, do czego Twoje skrypty mają dostęp w Microsoft 365, stosując zasadę najmniejszych uprawnień.
- Zarejestruj aplikację w Azure AD, aby utworzyć bezpieczną tożsamość dla swoich skryptów, umożliwiając bezpieczny dostęp do Microsoft Graph.
- Wybierz odpowiedni przepływ uwierzytelniania, taki jak Device Code Flow lub Managed Identity Flow, aby skutecznie zabezpieczyć tokeny dostępu.
- Twórz poprawnie zbudowane żądania HTTP w PowerShell, aby komunikować się z Microsoft Graph API i pobierać dane.
- Ostrożnie obsługuj błędy i limity API, aby zapewnić płynne działanie skryptów i uniknąć zakłóceń.
- Optymalizuj skrypty, pobierając tylko wybrane właściwości i grupując żądania w paczki, aby poprawić wydajność i zmniejszyć zużycie zasobów.
Wymagania wstępne dla PowerShell + Graph API
Zanim zaczniesz automatyzować zadania Microsoft 365 za pomocą PowerShell + Graph API, musisz odpowiednio przygotować system i środowisko. Ta preparacja zapewnia płynne wykonywanie i bezpieczny dostęp do zasobów Microsoft Graph.
Instalacja modułów PowerShell
Musisz zainstalować odpowiednie moduły PowerShell, aby współpracować z Microsoft Graph API. Zestaw SDK Microsoft Graph PowerShell udostępnia wszystkie niezbędne polecenia cmdlet do tej integracji. Aby uniknąć błędów, sprawdź, czy system spełnia poniższe minimalne wymagania:
| Wymaganie | Opis |
|---|---|
| Wersja PowerShell | Wymagany jest PowerShell w wersji 7 lub nowszej. |
| .NET Framework | Na macOS wymagany jest .NET Framework 4.7.2 lub nowszy. |
| PowerShellGet | Zaktualizuj PowerShellGet do najnowszej wersji. |
| Zasady wykonywania | Ustaw zasady wykonywania na RemoteSigned lub mniej restrykcyjne. |
Możesz zaktualizować PowerShellGet, uruchamiając Install-Module PowerShellGet -Force, oraz ustawić zasady wykonywania poleceniem Set-ExecutionPolicy RemoteSigned. Następnie zainstaluj moduł Microsoft Graph za pomocą:
Install-Module Microsoft.Graph -Scope CurrentUser
To polecenie pobiera najnowszą stabilną wersję modułu, umożliwiając łatwe wywoływanie punktów końcowych Microsoft Graph.
Konfiguracja środowiska Microsoft 365
Poprawna konfiguracja środowiska Microsoft 365 ma kluczowe znaczenie dla automatyzacji. Wykonaj poniższe kroki, aby zacząć:
- Upewnij się, że system spełnia wymagania: PowerShell 7.2 lub nowszy, .NET Framework 4.7.2 lub nowszy oraz najnowszy moduł PowerShellGet.
- Zainstaluj moduł Microsoft Graph PowerShell zgodnie z powyższym opisem.
- Połącz się z dzierżawą Microsoft 365, importując moduł i uwierzytelniając się z wymaganymi zakresami. Na przykład:
Connect-MgGraph -Scopes "User.ReadWrite.All","Directory.ReadWrite.All"
To polecenie wymaga zalogowania i przyznaje Twojej sesji uprawnienia do odczytu i zapisu danych użytkowników oraz katalogu. Zakresy możesz dostosować do potrzeb automatyzacji.
Zrozumienie uprawnień i zakresów
Uprawnienia i zakresy określają, co Twoje skrypty mogą odczytywać lub modyfikować w Microsoft 365. Microsoft Graph API stosuje dwa główne typy uprawnień:
- Uprawnienia delegowane: Stosowane, gdy uruchamiasz skrypty jako zalogowany użytkownik. Ograniczają dostęp do danych, których użytkownik jest właścicielem lub do których ma dostęp.
- Uprawnienia aplikacji: Pozwalają aplikacji lub skryptowi na dostęp do danych w całej organizacji bez zalogowanego użytkownika.
Typowe uprawnienia obejmują *.Read.All dla dostępu tylko do odczytu oraz *.ReadWrite.All dla pełnych możliwości odczytu i zapisu. Na przykład SecurityActions.Read.All pozwala przeglądać działania zabezpieczające, a SecurityActions.ReadWrite.All umożliwia ich modyfikację.
Uprawnienia aplikacji wymagają zgody administratora. Administrator dzierżawy musi zatwierdzić te uprawnienia, aby zapewnić bezpieczeństwo. Ponadto użytkownicy potrzebują odpowiednich ról Microsoft Entra, takich jak Security Reader, aby uzyskać dostęp do wrażliwych danych. Ten dostęp oparty na rolach zapewnia dodatkową warstwę bezpieczeństwa.
Podczas połączenia za pomocą zestawu SDK Microsoft Graph PowerShell określaj tylko te zakresy, których wymaga Twój skrypt. Ta praktyka jest zgodna z zasadą najmniejszych uprawnień i ogranicza ryzyko bezpieczeństwa. Pamiętaj, że uprawnienia przyznane Twojej aplikacji dotyczą wszystkich jej użytkowników, dlatego regularnie je przeglądaj i zarządzaj nimi.
Rozumiejąc i starannie konfigurując uprawnienia, chronisz swoje środowisko, jednocześnie umożliwiając potężną automatyzację z PowerShell + Graph API.
Tożsamość aplikacji w Azure AD
Rejestracja nowej aplikacji
Aby automatyzować zadania Microsoft 365 za pomocą PowerShell i Graph API, najpierw musisz zarejestrować aplikację w Azure Active Directory (Azure AD). Ta aplikacja działa jako tożsamość, której Twoje skrypty używają do bezpiecznego dostępu do Microsoft Graph. Wykonaj poniższe kroki, aby zarejestrować swoją aplikację:
- Otwórz portal Azure i przejdź do Azure Active Directory > Rejestracje aplikacji > Nowa rejestracja.
- Nadaj aplikacji znaczącą nazwę, na przykład „My Graph App”.
- Wybierz obsługiwane typy kont:
- Dzierżawa pojedyncza: Logować się mogą tylko użytkownicy Twojej dzierżawy Azure AD.
- Wiele dzierżaw: Logować się mogą użytkownicy z dowolnej dzierżawy Azure AD.
- Wiele dzierżaw i konta osobiste: Obejmuje użytkowników Azure AD oraz osobiste konta Microsoft.
Apple Podcasts · Spotify · YouTube · YouTube Music
Use Managed Identity with PowerShell for Microsoft Graph (English)