Administracja środowiskiem Exchange Online w Microsoft 365 przeszła długą drogę od czasów, gdy każda zmiana wymagała kliknięcia w rozbudowanym interfejsie centrum administracyjnego. Dziś, w 2026 roku, PowerShell pozostaje niezastąpionym narzędziem każdego poważnego administratora — oferując szybkość, powtarzalność i możliwość automatyzacji, o jakich administratorzy GUI mogą jedynie pomarzyć. Niezależnie od tego, czy zarządzasz pięćdziesięcioma skrzynkami w małej firmie, czy pięćdziesięcioma tysiącami w międzynarodowej korporacji, biegła znajomość cmdletów Exchange Online PowerShell to kompetencja, która bezpośrednio przekłada się na bezpieczeństwo, zgodność i efektywność operacyjną Twojej organizacji.
Dlaczego PowerShell, a nie centrum administracyjne?
Centrum administracyjne Exchange (EAC) sprawdza się przy okazjonalnych, prostych zadaniach — dodaniu aliasu, ukryciu skrzynki z listy adresowej czy zresetowaniu hasła pojedynczego użytkownika. Problem pojawia się, gdy tych zadań robi się dziesięć, pięćdziesiąt albo sto. Ręczne klikanie staje się nie tylko czasochłonne, ale i podatne na błędy ludzkie — pominięte pole wyboru, literówka w adresie czy przypadkowe zastosowanie ustawienia do niewłaściwej grupy użytkowników.
PowerShell eliminuje te ryzyka. Skrypt raz napisany i przetestowany wykona się identycznie za pierwszym, dziesiątym i setnym razem. Co więcej, umożliwia rzeczy niemożliwe w GUI: masowe podmiany atrybutów na podstawie złożonych filtrów, generowanie szczegółowych raportów z wielu źródeł danych jednocześnie czy integrację z systemami monitoringu i biletowania. W erze DevOps i infrastruktury jako kodu, cmdlety Exchange Online PowerShell są elementem szerszego ekosystemu automatyzacji — mogą być wywoływane z Azure Automation, GitHub Actions, a nawet prostych harmonogramów Windows Task Scheduler.
Moduł ExchangeOnlineManagement — fundament pracy administratora
Podstawą współczesnej administracji Exchange Online jest moduł ExchangeOnlineManagement, następca historycznych modułów MSOnline i AzureAD (które w większości scenariuszy zostały zastąpione przez Microsoft Graph PowerShell SDK, ale w obszarze Exchange zachowały swoją niszową rolę). Moduł ten jest aktywnie rozwijany przez Microsoft — w 2026 roku otrzymujemy aktualizacje co kilka tygodni, a obsługa nowych funkcji Exchange Online pojawia się w nim niemal równocześnie z ich wdrożeniem po stronie usługi.
Instalacja jest trywialna i sprowadza się do jednego polecenia:
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser -Force
Moduł wymaga PowerShell 7.2 lub nowszego — Microsoft oficjalnie zakończył wsparcie dla Windows PowerShell 5.1 w kontekście Exchange Online pod koniec 2024 roku i od tego czasu wszystkie nowe funkcje modułu są testowane wyłącznie pod kątem nowoczesnego, wieloplatformowego PowerShell 7. Dla administratorów pracujących na systemach Linux i macOS to dobra wiadomość: ExchangeOnlineManagement działa na tych platformach bez zastrzeżeń od wersji 3.0.
Połączenie ze środowiskiem jest równie proste:
Connect-ExchangeOnline -UserPrincipalName admin@domena.pl
Kluczową zmianą wprowadzoną w 2025 roku jest wymóg stosowania uwierzytelniania opartego na Microsoft Entra ID (dawniej Azure AD) z obowiązkowym MFA. Era logowania za pomocą samego hasła (tzw. basic authentication) została definitywnie zamknięta — i słusznie, bo był to jeden z najczęściej wykorzystywanych wektorów ataku na organizacje korzystające z Microsoft 365. Dziś Connect-ExchangeOnline domyślnie korzysta z nowoczesnego uwierzytelniania, a administratorzy powinni dodatkowo wdrożyć zasady dostępu warunkowego (Conditional Access) ograniczające możliwość łączenia się z PowerShell do zaufanych lokalizacji i urządzeń.
Warto też pamiętać o ograniczeniach throttlingu. Exchange Online narzuca limity na liczbę operacji PowerShell w jednostce czasu — domyślnie jest to około 1800 operacji na okno 5-minutowe dla całej organizacji. Przy skryptach masowych kluczowe jest stosowanie mechanizmów ponawiania (retry) i przetwarzania wsadowego. W przeciwnym razie skrypt zostanie przerwany błędem TooManyRequests, a Ty stracisz czas na ręczne wznawianie.
Zarządzanie skrzynkami pocztowymi — od tworzenia po delegację uprawnień
Sercem każdej organizacji Exchange Online są skrzynki pocztowe. Komendy do zarządzania nimi stanowią najobszerniejszą i najczęściej używaną grupę cmdletów, dlatego poświęcamy im osobny, szczegółowy rozdział.
Tworzenie nowej skrzynki to operacja, którą wykonuje się wielokrotnie w cyklu życia każdego pracownika:
New-Mailbox -Name "Anna Kowalska" -Alias anna.kowalska `
-UserPrincipalName anna.kowalska@firma.pl `
-Password (ConvertTo-SecureString "TymczasoweHaslo123!" -AsPlainText -Force) `
-ResetPasswordOnNextLogon $true
Powyższe polecenie nie tylko tworzy skrzynkę, ale przy okazji zakłada konto użytkownika w Entra ID — to jedna z tych integracji, które czynią Exchange Online wygodniejszym od zarządzania osobnymi systemami pocztowymi i katalogowymi. W 2026 roku parametr -ResetPasswordOnNextLogon jest domyślnie wymuszany przez polityki bezpieczeństwa w nowych tenantach Microsoft 365, co stanowi dodatkową warstwę ochrony przed atakami typu credential stuffing.
Modyfikacja istniejącej skrzynki daje ogromne możliwości. Oto kilka często używanych scenariuszy:
# Ustawienie limitu pojemności skrzynki na 50 GB z ostrzeżeniem przy 45 GB
Set-Mailbox -Identity anna.kowalska@firma.pl `
-IssueWarningQuota 45GB -ProhibitSendReceiveQuota 50GB
# Włączenie archiwum online (Archive Mailbox)
Enable-Mailbox -Identity anna.kowalska@firma.pl -Archive
# Ukrycie skrzynki z globalnej listy adresowej
Set-Mailbox -Identity anna.kowalska@firma.pl -HiddenFromAddressListsEnabled $true
# Przypisanie niestandardowych atrybutów rozszerzających (ExtensionCustomAttribute1-15)
Set-Mailbox -Identity anna.kowalska@firma.pl `
-CustomAttribute1 "DziałSprzedaży" -CustomAttribute2 "RegionPL-Wschodni"
Zarządzanie uprawnieniami do skrzynek to osobny, niezwykle istotny obszar. Exchange Online rozróżnia kilka poziomów dostępu, a najważniejsze z nich to:
- Full Access — pełny dostęp do zawartości skrzynki, włącznie z możliwością wysyłania wiadomości jako właściciel (ale nie "jako" właściciel — do tego służy osobne uprawnienie Send As).
- Send As — możliwość wysłania wiadomości tak, jakby pochodziła od właściciela skrzynki.
- Send on Behalf — wysyłanie w imieniu właściciela (adresat zobaczy "Jan Kowalski w imieniu Anna Kowalska").
Przydzielanie tych uprawnień w PowerShell wygląda następująco:
Add-MailboxPermission -Identity anna.kowalska@firma.pl `
-User piotr.nowak@firma.pl -AccessRights FullAccess `
-InheritanceType All -AutoMapping $true
Add-RecipientPermission -Identity anna.kowalska@firma.pl `
-Trustee piotr.nowak@firma.pl -AccessRights SendAs
W 2026 roku Microsoft domyślnie włącza funkcję automatycznego mapowania (AutoMapping) dla uprawnień Full Access, co oznacza, że skrzynka automatycznie pojawi się w profilu Outlooka użytkownika uprawnionego. W dużych organizacjach bywa to jednak problematyczne — Outlook ma limit około 500 automatycznie mapowanych skrzynek, po przekroczeniu którego może działać niestabilnie.
Do usuwania uprawnień służą analogiczne polecenia Remove-MailboxPermission i Remove-RecipientPermission, a do podglądu bieżącego stanu — Get-MailboxPermission i Get-RecipientPermission.
Grupy dystrybucyjne, dynamiczne i Microsoft 365 Groups — czym się różnią i jak nimi zarządzać
Exchange Online obsługuje kilka typów grup, a ich rozróżnienie jest kluczowe dla poprawnego zarządzania:
Grupy dystrybucyjne to najprostszy mechanizm — lista adresów e-mail, na którą można wysłać wiadomość. Nie mają skrzynki, kalendarza ani przestrzeni współpracy. Są zarządzane wyłącznie przez administratora Exchange (lub przez właściciela, jeśli nadano mu uprawnienia). Tworzenie:
New-DistributionGroup -Name "Dział Sprzedaży" `
-PrimarySmtpAddress sprzedaz@firma.pl `
-ManagedBy admin@firma.pl
Dynamiczne grupy dystrybucyjne idą o krok dalej — ich członkostwo jest wyliczane w czasie rzeczywistym na podstawie filtra atrybutów. Nie przechowują statycznej listy członków, więc są idealne do scenariuszy, gdzie struktura organizacyjna zmienia się dynamicznie:
New-DynamicDistributionGroup -Name "Wszyscy pracownicy Warszawa" `
-PrimarySmtpAddress wszyscy-wawa@firma.pl `
-RecipientFilter { City -eq "Warszawa" -and RecipientTypeDetails -eq "UserMailbox" }
Dodawanie i usuwanie członków z grup statycznych:
Add-DistributionGroupMember -Identity "Dział Sprzedaży" -Member anna@firma.pl
Remove-DistributionGroupMember -Identity "Dział Sprzedaży" -Member anna@firma.pl
Grupy Microsoft 365 to z kolei nowoczesne grupy współpracy, które oprócz adresu e-mail zapewniają współdzieloną skrzynkę, kalendarz, przestrzeń SharePoint, notes OneNote i obszar roboczy w Microsoft Teams. Są zarządzane głównie poprzez cmdlety *-UnifiedGroup:
New-UnifiedGroup -DisplayName "Projekt Alfa" `
-PrimarySmtpAddress projektalfa@firma.pl `
-Owner admin@firma.pl -AccessType Private
W 2026 roku Microsoft domyślnie tworzy wszystkie nowe grupy z ustawieniem -AccessType Private w tenantach z włączonymi zaawansowanymi politykami bezpieczeństwa, co eliminuje ryzyko przypadkowego wycieku danych przez grupy publiczne. Administratorzy powinni też wiedzieć, że grupy Microsoft 365 nie są zarządzane przez Add-DistributionGroupMember — do dodawania członków służy Add-UnifiedGroupLinks.
Ochrona poczty — reguły transportowe i filtry antyspamowe
Reguły transportowe (zwane też regułami przepływu poczty, z ang. mail flow rules lub transport rules) to niezwykle elastyczne narzędzie do kontroli ruchu pocztowego. Mogą służyć do wymuszania podpisów, blokowania załączników, przekierowywania wiadomości czy oznaczania wiadomości spoza organizacji.
Tworzenie reguły dodającej ostrzeżenie do wiadomości od zewnętrznych nadawców:
New-TransportRule -Name "Ostrzezenie: Nadawca zewnetrzny" `
-FromScope NotInOrganization `
-PrependSubject "[ZEWNĘTRZNE] " `
-ExceptIfFromMemberOf "BezpieczniNadawcy@firma.pl"
Reguła wymuszająca szyfrowanie dla wiadomości zawierających określone frazy w temacie:
New-TransportRule -Name "Szyfruj dane osobowe" `
-SubjectContainsWords "PESEL","dane osobowe","poufne" `
-ApplyOME "Encrypt" `
-Mode Enforce
W 2026 roku Microsoft rozszerzył parser reguł transportowych o wykrywanie numerów PESEL, NIP i REGON bezpośrednio w treści wiadomości (funkcja DLP dla polskich danych wrażliwych dostępna w planach E5 i Compliance), ale podstawowe filtrowanie po słowach kluczowych nadal działa dla wszystkich planów — w tym Business Basic i Standard.
Do zarządzania listami dozwolonych i zablokowanych nadawców na poziomie skrzynki służy parametr -BlockedSenders w Set-Mailbox:
Set-Mailbox -Identity anna@firma.pl `
-BlockedSenders @{Add="spamer@zlosliwy.pl","phishing@falszywy.pl"}
Raportowanie i audyt — co się dzieje w Twoim środowisku
Bieżący monitoring i raportowanie to obszar, w którym PowerShell naprawdę rozkłada skrzydła. Podczas gdy EAC oferuje ograniczone, predefiniowane raporty, PowerShell pozwala na dowolne krzyżowanie danych i eksportowanie wyników do plików CSV do dalszej analizy.
Pobranie statystyk wszystkich skrzynek — rozmiaru, liczby elementów, daty ostatniego logowania:
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | `
Select-Object DisplayName, TotalItemSize, ItemCount, LastLogonTime | `
Export-Csv -Path "C:\Raporty\skrzynki_statystyki.csv" -NoTypeInformation -Encoding UTF8
Lista skrzynek, które nie były używane od ponad 90 dni (kandydaci do dezaktywacji):
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | `
Where-Object { $_.LastLogonTime -lt (Get-Date).AddDays(-90) } | `
Select-Object DisplayName, LastLogonTime
Szczególnie przydatne jest audytowanie uprawnień — odpowiedź na pytanie "kto ma dostęp do czyjej skrzynki" jest krytyczna zarówno podczas rotacji pracowników, jak i przy audytach bezpieczeństwa:
Get-Mailbox -ResultSize Unlimited | Get-MailboxPermission | `
Where-Object { ($_.User -notlike "NT AUTHORITY\*") -and `
($_.User -notlike "S-1-*") -and `
($_.IsInherited -eq $false) } | `
Select-Object Identity, User, AccessRights
W 2026 roku Microsoft wprowadził cmdlet Get-MailboxAccessReport dający zagregowany widok wszystkich ścieżek dostępu do skrzynki — ta funkcjonalność, wcześniej dostępna tylko w planie E5, została udostępniona również dla subskrybentów Business Premium.
Automatyzacja — skrypty, które pracują za Ciebie
Prawdziwą siłę PowerShell ujawnia się w automatyzacji. Dobrze napisany skrypt, uruchamiany cyklicznie, potrafi zastąpić godziny ręcznej pracy administratora. Oto kilka sprawdzonych scenariuszy:
Automatyczne przypisywanie limitów skrzynek na podstawie działu — pracownicy IT dostają 50 GB, marketing 25 GB, reszta 10 GB:
$mapa = @{
"IT" = @{Warn=45GB; Prohibit=50GB}
"Marketing" = @{Warn=22GB; Prohibit=25GB}
"Default" = @{Warn=9GB; Prohibit=10GB}
}
Get-Mailbox -ResultSize Unlimited | ForEach-Object {
$dzial = (Get-User $_.UserPrincipalName).Department
$limity = if ($mapa.ContainsKey($dzial)) { $mapa[$dzial] } else { $mapa["Default"] }
Set-Mailbox $_.UserPrincipalName `
-IssueWarningQuota $limity.Warn `
-ProhibitSendReceiveQuota $limity.Prohibit
}
Masowe delegowanie uprawnień podczas onboardingu nowego asystenta zarządu:
$asystent = "asystent@firma.pl"
$zarzad = Get-DistributionGroupMember -Identity "Zarzad@firma.pl"
foreach ($dyrektor in $zarzad) {
Add-MailboxPermission -Identity $dyrektor.PrimarySmtpAddress `
-User $asystent -AccessRights FullAccess -AutoMapping $false
Add-RecipientPermission -Identity $dyrektor.PrimarySmtpAddress `
-Trustee $asystent -AccessRights SendAs
}
Pamiętaj, że automatyzacja wymaga odpowiedniego podejścia do bezpieczeństwa. Skrypty produkcyjne powinny korzystać z certyfikatów do uwierzytelniania (zamiast haseł na stałe wpisanych w kodzie) i być uruchamiane z kont usług z minimalnymi wymaganymi uprawnieniami. W 2026 roku domyślna polityka Microsoft zaleca stosowanie tożsamości zarządzanych (Managed Identities) wszędzie tam, gdzie skrypty są uruchamiane z poziomu platformy Azure.
Obsługa błędów i throttling — co zrobić, gdy coś pójdzie nie tak
Exchange Online, jako usługa współdzielona w chmurze Microsoft, aktywnie chroni się przed przeciążeniem. Głównym mechanizmem jest throttling — ograniczanie liczby operacji, które pojedynczy administrator (a raczej pojedynczy kontekst uwierzytelnienia) może wykonać w danym oknie czasowym.
Standardowy limit dla organizacji to około 1800 operacji na 5 minut, ale Microsoft zastrzega sobie prawo do dynamicznego obniżania tego limitu w okresach zwiększonego obciążenia globalnego. Co więcej, niektóre "ciężkie" cmdlety (szczególnie Get-MailboxStatistics i Get-MessageTrace) mają własne, bardziej restrykcyjne limity — potrafią wrócić z błędem już po kilkudziesięciu wywołaniach.
Skuteczna strategia radzenia sobie z throttlingiem opiera się na trzech filarach:
- Przetwarzanie wsadowe (batching) — zamiast wykonywać 500 pojedynczych wywołań
Set-Mailbox, użyj pętli przetwarzającej po 20-30 obiektów z opóźnieniem między partiami. - Ponawianie z wykładniczym backoffem — gdy otrzymasz błąd
TooManyRequests, odczekaj coraz dłuższy czas przed kolejną próbą. - Filtrowanie po stronie serwera — używaj parametrów filtrujących (
-Filter,-SearchQuery) zamiastWhere-Object, który pobiera wszystkie obiekty i filtruje je lokalnie.
Przykład implementacji retry z backoffem:
function Invoke-WithRetry {
param($ScriptBlock, [int]$MaxRetries=5)
$retry = 0
while ($retry -lt $MaxRetries) {
try {
return & $ScriptBlock
break
} catch [Microsoft.Exchange.Management.RestApiClient.RestApiCallFailedException] {
$wait = [Math]::Pow(2, $retry)
Write-Warning "Throttled. Oczekiwanie ${wait}s..."
Start-Sleep -Seconds $wait
$retry++
}
}
throw "Nieudane po $MaxRetries próbach"
}
Najlepsze praktyki bezpieczeństwa — o czym pamiętać w 2026 roku
Krajobraz zagrożeń w 2026 roku jest bardziej złożony niż kiedykolwiek wcześniej. Exchange Online, jako centralny hub komunikacji organizacji, jest jednym z głównych celów ataków. Oto zestaw praktyk, które każdy administrator powinien wdrożyć:
1. Wyłączanie POP3 i IMAP4. Te protokoły są reliktami przeszłości. Jeśli nie masz bardzo konkretnego powodu, by je utrzymywać (np. integracja z systemem, który jeszcze ich nie porzucił), wyłącz je dla całej organizacji:
Set-CASMailboxPlan -Identity ExchangeOnlineEnterprise `
-PopEnabled $false -ImapEnabled $false
2. Wymuszanie MFA dla wszystkich kont administracyjnych i użytkowników. Connect-ExchangeOnline od 2025 roku wymaga MFA, ale to tylko wierzchołek góry lodowej. Upewnij się, że żadne konto z uprawnieniami administracyjnymi nie ma wyłączonego MFA w politykach Entra ID.
3. Audyt skrzynek współdzielonych. Skrzynki współdzielone nie mają bezpośredniego loginu, ale ich hasła mogą być włączone — co stanowi poważne ryzyko. Sprawdź stan wszystkich skrzynek współdzielonych:
Get-Mailbox -RecipientTypeDetails SharedMailbox `
-ResultSize Unlimited | Get-User | `
Select-Object DisplayName, UserPrincipalName, `
@{N="AccountEnabled";E={$_.UserAccountControl -notmatch "AccountDisabled"}}
4. Regularny przegląd reguł transportowych. Złośliwe reguły transportowe (tworzone przez atakującego po przejęciu konta) potrafią przekierowywać poufną korespondencję na zewnątrz organizacji. Audytuj je co miesiąc:
Get-TransportRule | Select-Object Name, Description, `
@{N="CreatedBy";E={(Get-User $_.CreatedBy).DisplayName}}, WhenChanged
5. Zarządzanie sesjami PowerShell. Ogranicz czas życia tokenów i monitoruj aktywne sesje administracyjne. W 2026 roku Microsoft domyślnie wymusza 8-godzinny maksymalny czas sesji Connect-ExchangeOnline w tenantach z włączonymi ustawieniami Security Defaults.
Częste pytania
Czy do korzystania z Exchange Online PowerShell potrzebuję licencji?
Tak. Potrzebujesz konta z przypisaną licencją Microsoft 365 zawierającą Exchange Online (dowolny plan: Business Basic, Business Standard, Business Premium, E1, E3, E5 lub odpowiednik w sektorze edukacji i administracji). Sam moduł ExchangeOnlineManagement jest darmowy i nie wymaga dodatkowych licencji.
Co zrobić, gdy dostaję błąd "The remote server returned an error: (403) Forbidden"?
Ten błąd w 2026 roku niemal zawsze oznacza, że próbujesz połączyć się z konta, które nie ma włączonego MFA, korzystając z metody uwierzytelniania, która została wycofana. Upewnij się, że Twoje konto ma skonfigurowane nowoczesne uwierzytelnianie i że używasz Connect-ExchangeOnline (nie przestarzałego New-PSSession). Jeśli używasz konta usługi serwisowej, rozważ wdrożenie certyfikatu do uwierzytelniania lub tożsamości zarządzanej Azure.
Jaka jest różnica między Exchange Online PowerShell a Microsoft Graph API dla zadań pocztowych?
Microsoft Graph API jest nowszym, REST-owym interfejsem, który stopniowo przejmuje część funkcji tradycyjnie obsługiwanych przez PowerShell (np. zarządzanie wiadomościami w skrzynkach). Jednak w 2026 roku wciąż nie obsługuje wszystkich scenariuszy administracyjnych — szczególnie reguł transportowych, szczegółowej konfiguracji skrzynek i zaawansowanych raportów. PowerShell pozostaje narzędziem pierwszego wyboru dla zadań administracyjnych.
Czy mogę uruchamiać cmdlety Exchange Online na Linuxie?
Tak. Moduł ExchangeOnlineManagement od wersji 3.0 w pełni wspiera PowerShell 7 na systemach Linux (Ubuntu, Debian, RHEL i pochodne) oraz macOS. Instalacja odbywa się przez Install-Module, a funkcjonalność jest identyczna jak na Windows.
Ile czasu zajmuje propagacja zmian wprowadzonych przez PowerShell?
Większość zmian (skrzynki, aliasy, uprawnienia) jest wprowadzana w ciągu 30-90 sekund, choć replikacja do wszystkich punktów obecności Microsoft 365 może trwać do 24 godzin w przypadku zmian w globalnej liście adresowej. Jeśli zależy Ci na natychmiastowym efekcie, użyj opcji -Force tam, gdzie jest dostępna.
Czy istnieje limit liczby skrzynek, którymi mogę zarządzać jednocześnie?
Nie ma twardego limitu na liczbę skrzynek, ale obowiązuje throttling opisany w artykule. W środowiskach z setkami tysięcy skrzynek zaleca się podział skryptów na mniejsze partie (po 1000-5000 skrzynek) i rozłożenie ich w czasie, aby nie przekroczyć limitów.
Jak mogę sprawdzić, jakie uprawnienia administratora posiadam?
Get-ManagementRoleAssignment -GetEffectiveUsers | `
Where-Object {$_.EffectiveUserName -eq "twoj@login.pl"}
To polecenie pokaże wszystkie role RBAC przypisane do Twojego konta — zarówno bezpośrednio, jak i przez grupy ról.
Czy grupy dynamiczne aktualizują się automatycznie, czy muszę je wymuszać?
Członkostwo dynamicznych grup dystrybucyjnych jest wyliczane przy każdej wysłanej do nich wiadomości — nie ma potrzeby ręcznego odświeżania. Inaczej jest w przypadku dynamicznych grup Microsoft 365, gdzie przeliczenie może trwać do 24 godzin (lub krócej, jeśli użyjesz Set-UnifiedGroup -Identity nazwa -ForceMembershipRefresh).
Jak odzyskać usuniętą skrzynkę?
Użyj Get-Mailbox -SoftDeletedMailbox, by znaleźć usuniętą skrzynkę (widoczną przez 30 dni), a następnie Undo-SoftDeletedMailbox -Identity adres -WindowsLiveID adres. Jeśli skrzynka została trwale usunięta (hard-deleted), odzyskanie jest niemożliwe bez zgłoszenia do pomocy technicznej Microsoft w ciągu 30 dni od usunięcia.
Czy PowerShell Exchange Online zastąpi całkowicie centrum administracyjne?
Nie w najbliższej przyszłości. Microsoft inwestuje w oba interfejsy, a EAC jest stale rozwijany — szczególnie w obszarach raportowania i uproszczonego zarządzania, które są bardziej dostępne dla mniej technicznych administratorów. PowerShell pozostanie narzędziem dla zaawansowanych scenariuszy, automatyzacji i zarządzania na dużą skalę.
Biegłość w PowerShell Exchange Online to nie tylko umiejętność techniczna — to świadoma inwestycja w efektywność i bezpieczeństwo Twojego środowiska Microsoft 365. Jeśli szukasz niezawodnego źródła licencji Microsoft 365 w konkurencyjnych cenach, które pozwolą Ci w pełni wykorzystać opisane możliwości, sprawdź ofertę na KluczeSoft.pl — znajdziesz tam rozwiązania dostosowane do potrzeb firm każdej wielkości.
