IT Akademia
Panel / ๐Ÿ“ง Microsoft 365 โ€” uslugi i administracja / Lekcja 7/7

Administracja operacyjna: Graph/PowerShell, service health i raportowanie

โฑ 32 min ยท poziom 4/5
๐Ÿ“œ Wprowadzenie โ€” od historii do szczegolu 2015-dzis

Klikanie w portalu admina jest wygodne przy jednym uzytkowniku, ale beznadziejne przy tysiacu. Microsoft Graph (2015) zunifikowal dostep do calego M365 przez jedno API, a modul Microsoft Graph PowerShell dal adminom mozliwosc automatyzacji wszystkiego skryptem. To przejscie od 'reczne operacje' do 'zarzadzanie jako kod'.

To lekcja poziomu 4 o operacyjnej administracji w skali. Od ogolu 'portal sie nie skaluje' zejdziemy do konkretu: czym jest Microsoft Graph i jak sie z nim laczyc, praca z Graph PowerShell (masowe operacje na uzytkownikach i licencjach), monitorowanie service health oraz raportowanie uzycia. To warsztat, ktory zamienia powtarzalna klikanine w powtarzalny, audytowalny skrypt.

Po tej lekcji bedziesz umiec:

GUI jest dobre do pojedynczych zadan. Ale gdy masz zmienic ustawienie 500 skrzynek, wygenerowac raport uzycia albo zaudytowac uprawnienia โ€” potrzebujesz automatyzacji. Graph i PowerShell to codzienne narzedzia dojrzalego admina M365.

Microsoft Graph โ€” jedno API do wszystkiego

**Microsoft Graph** to zunifikowane REST API do calego M365 (uzytkownicy, grupy, poczta, Teams, urzadzenia, security). Dostep: **Microsoft Graph PowerShell SDK**, bezposrednie REST albo Graph Explorer do testow. Uprawnienia nadaje sie jako **scopes** (delegated = w imieniu usera; application = jako aplikacja/daemon).

# Microsoft Graph PowerShell โ€” przyklad operacji masowej
Connect-MgGraph -Scopes 'User.ReadWrite.All','Group.ReadWrite.All'
# Znajdz userow bez MFA-capable methods i wypisz
Get-MgUser -All -Property displayName,userPrincipalName |
  Where-Object { $_.AccountEnabled } |
  Select-Object DisplayName, UserPrincipalName
# Dodaj wszystkich z dzialu do grupy (licencjonowanie oparte na grupach)
$g = Get-MgGroup -Filter "displayName eq 'Dzial IT'"
Get-MgUser -Filter "department eq 'IT'" -All |
  ForEach-Object { New-MgGroupMember -GroupId $g.Id -DirectoryObjectId $_.Id }

Exchange Online PowerShell

Wiele operacji poczty istnieje TYLKO w PowerShell (albo jest tam wygodniejsze): masowe uprawnienia, reguly transportu, message trace skryptowy, ustawienia skrzynek.

Connect-ExchangeOnline -UserPrincipalName admin@firma.com
# Nadaj Send As do wspoldzielonej skrzynki
Add-RecipientPermission info@firma.com -Trustee jan@firma.com -AccessRights SendAs
# Znajdz, gdzie utknal mail (diagnoza dostarczenia)
Get-MessageTrace -SenderAddress jan@firma.com -StartDate (Get-Date).AddDays(-2) -EndDate (Get-Date)
# Zamien skrzynke usera na wspoldzielona (po odejsciu pracownika)
Set-Mailbox jan@firma.com -Type Shared
Trend: stare modul MSOnline i AzureAD sa wycofywane. Nowe automatyzacje pisz w **Microsoft Graph PowerShell SDK** i **Exchange Online Management (V3)**. Uwaga na throttling przy operacjach masowych โ€” dziel na paczki.

Service Health, Message Center, Advisories

ZrodloOdpowiada na pytanie
Service HealthCzy usluga MA AWARIE TERAZ? (incydenty i statusy na zywo)
Message CenterCo sie ZMIENI? (nadchodzace zmiany, wycofania, roadmap dla tenanta)
AdvisoriesDegradacja/ostrzezenia niebฤ™dace pelna awaria
Service Health API / GraphProgramowe monitorowanie stanu do wlasnych alertow
Message Center to obowiazkowa lektura admina: tam Microsoft ZAWCZASU ogล‚asza wycofania i zmiany (np. 'ta funkcja zniknie za 60 dni'). Ignorowanie = niespodzianki na produkcji.

Raportowanie uzycia i higiena tenanta

Change management w tenancie

  1. Sledz Message Center i planuj wplyw nadchodzacych zmian.
  2. Testuj zmiany na **pilotowej grupie** (targeted release) przed calym tenantem.
  3. Dokumentuj konfiguracje (as-built) i wersjonuj skrypty administracyjne.
  4. Ustaw alerty (Service Health, Secure Score, koszt) zamiast reagowac po fakcie.

๐ŸŽฏ Cwiczenia podsumowujace

Gotowe? Oznacz lekcje jako ukonczona
Postep zapisuje sie automatycznie.
โ† Poprzednia Zakoncz modul โœ“