Serwer Exchange pozwala administratorowi przeszukiwać skrzynki pocztowe użytkowników w bazach danych i usuwać niektóre litery (lub inne elementy) ze skrzynek pocztowych. Na przykład użytkownik popełnił błąd i przypadkowo wysłał prywatne dane do innych użytkowników w organizacji i nie udało mu się wycofać wiadomości w programie Outlook. Departament Bezpieczeństwa Informacji wymaga, abyś jako administrator Exchange usunął tę wiadomość e-mail od wszystkich użytkowników w organizacji Exchange. W tym artykule pokażemy, jak używać programu PowerShell do przeszukiwania skrzynek pocztowych użytkowników Exchange (według różnych kryteriów) i usuwania pojedynczych wiadomości od określonego użytkownika lub wszystkich użytkowników Exchange. Opisane techniki dotyczą Exchange 2016, 2013 i 2010..
Treść
- Przypisywanie uprawnień do wyszukiwania skrzynek pocztowych Exchange
- Korzystamy z polecenia cmdlet Search-Mailbox, aby znajdować i usuwać litery ze skrzynek pocztowych Exchange
- Przykłady zapytań SearchQuery Exchange Mailbox
- Ograniczenia skrzynki wyszukiwania
- Szybko znajduj i usuwaj wiadomości e-mail w programie Exchange 2016 za pomocą narzędzia New-ComplianceSearch
Przypisywanie uprawnień do wyszukiwania skrzynek pocztowych Exchange
Konto administratora, które wyszukuje i usuwa elementy, musi mieć przypisane następujące role:
- Eksport importu skrzynki pocztowej
- Wyszukiwanie skrzynki pocztowej
Możesz przypisać role za pomocą EAC lub za pomocą następujących poleceń PowerShell:
New-ManagementRoleAssignment -User itpro -Role „Mailbox Import Export”
New-ManagementRoleAssignment -User itpro -Role „Wyszukiwanie skrzynki pocztowej”
Po przypisaniu ról należy ponownie uruchomić konsolę Exchange Management Shell.
Korzystamy z polecenia cmdlet Search-Mailbox, aby znajdować i usuwać litery ze skrzynek pocztowych Exchange
Możesz także wyszukiwać litery w skrzynkach pocztowych użytkowników za pomocą Panelu sterowania programu Exchange / Centrum administracyjnego programu Exchange, jednak ta metoda wyszukiwania jest raczej powolna i nie pozwala na usuwanie listów. Wyszukiwanie jest znacznie łatwiejsze przy użyciu programu PowerShell.
Za pomocą polecenia cmdlet można wyszukiwać wiadomości w skrzynkach użytkowników Wyszukaj skrzynkę pocztową, co pozwala, zgodnie z określonymi kryteriami, znajdować litery we wszystkich lub określonych skrzynkach pocztowych, kopiować znalezione elementy do innej skrzynki pocztowej lub usuwać je.
Najpierw ustalimy, jak wyszukiwać za pomocą Search-Mailbox..
Aby wyszukać w określonej skrzynce pocztowej o określonym temacie, uruchom polecenie:Wyszukiwanie w skrzynce pocztowej - Identyfikacja wizualna - Wyszukiwanie Zapytanie „Temat:„ Raport roczny ””
Aby przeszukać wszystkie skrzynki pocztowe w organizacji, użyj polecenia:Get-Mailbox -ResultSize nieograniczony | Search-Mailbox -SearchQuery ”Temat:„ Raport roczny ”
Aby skopiować wyniki wyszukiwania do określonej skrzynki pocztowej i folderu, użyj parametrów TargetMailbox i TargetFolder. Dlatego po zakończeniu wyszukiwania możesz ręcznie użyć programu Outlook lub OWA, aby wyświetlić znalezione litery. Załóżmy, że musimy wyszukać litery na liście użytkowników (zawartej w pliku tekstowym users.txt) i skopiować litery znalezione w folderze określonej skrzynki pocztowej, wykonaj:
get-content users.txt | Get-Mailbox -ResultSize nieograniczony | Search-Mailbox -SearchQuery „Temat: Raport roczny” -TargetMailbox sec_mbx -TargetFolder „ExSearchFolder”
Parametr -Zaloguj się oznacza, że musisz tylko ocenić wyniki wyszukiwania bez kopiowania wyników wyszukiwania do pola docelowego i bez usuwania elementów. Gdy użyjesz tego argumentu, raport z wynikami wyszukiwania zostanie wysłany do określonej docelowej skrzynki pocztowej. Raport jest zarchiwizowanym plikiem csv, który zawiera listę pól spełniających kryteria wyszukiwania..
Możesz ocenić wyniki wyszukiwania za pomocą parametru -EstimateResultOnly, zwróć uwagę, że używając tego argumentu nie musisz określać docelowej skrzynki pocztowej i folderu
Aby usunąć znalezione litery, musisz skorzystać z opcji -Deletecontent, aby usunąć prośby o potwierdzenie usunięcia informacji, dodaj parametr -Siła.
Usuń wszystkie litery z vasia użytkownika we wszystkich skrzynkach pocztowych na określonym serwerze Exchnage:
Get-Mailbox -Server msk-mdb1 -ResultSize nieograniczony | Wyszukaj skrzynkę pocztową -Szukaj zapytania 'od: „[email protected]” „-DeleteContent -Force
Aby wyszukać tylko usunięte elementy, dodaj parametr -SearchDumpsterOnly (aby wykluczyć wyszukiwanie usuniętych elementów, dodaj parametr -SearchDumpster: $ false). Jeśli chcesz wykluczyć archiwum skrzynki pocztowej, użyj parametru -DoNotIncludeArchive.
Przykłady zapytań SearchQuery Exchange Mailbox
Spójrzmy na przykłady zapytań o wybór elementu pocztowego za pomocą parametru SearchQuery. Parametr SearchQuery obsługuje zapytania w języku KQL (Język zapytań słów kluczowych) - https://docs.microsoft.com/en-us/sharepoint/dev/general-development/keyword-query-language-kql-syntax-reference.
Usuń wszystkie litery ze słowem kluczowym „Tajne” w temacie od wszystkich użytkowników spoza Twojej domeny:
Wyszukaj w skrzynce pocztowej -Identity vasia -SearchQuery 'Temat: „Secret” i „winitpro.ru” ”-DeleteContent
Znajdź i usuń wszystkie litery z załącznikami większymi niż 20 MB:
Search-Mailbox -Identity vasia -SearchQuery 'hasattachment: true AND Size> 20971520' -DeleteContent
Możesz jednocześnie przeszukać tekst w nagłówku i wierszu tematu litery, na przykład znajdziemy i usuniemy wszystkie litery zawierające w wierszu tematu wyrażenie „Nowy Rok” lub wyrażenie „kup brandy”.
Search-Mailbox vasia -SearchQuery Temat: „RE: Nowy Rok” LUB treść: „zakup brandy” -DeleteContent -Force
Możesz wyszukiwać określone elementy w polach za pomocą argumentu Rodzaj, na przykład:
Spotkania: -SearchQuery „Rodzaj: spotkania”
Dane kontaktowe: -SearchQuery „Rodzaj: kontakty”
Lub inne elementy:
- Email - listy
- Spotkania - Spotkania
- Zadania - zadania
- Notatki - uwaga
- Dokumenty - dokumenty
- Czasopisma - czasopisma
- Kontakty - kontakty
- IM - wiadomości komunikatora
Wyszukaj litery według określonego nadawcy i odbiorcy
-SearchQuery ”od:„ [email protected] ”ORAZ:„ [email protected] ””
Możesz wyszukiwać litery z określonym plikiem w załączniku:
-SearchQuery „załącznik:„ secret.pdf ””
Lub według typu pliku:
-SearchQuery „podobny do załącznika:„ *. Docx ””
Możesz wyszukiwać według daty wysłania / otrzymania listów, ale istnieje kilka niuansów. Korzystając z dat jako kryteriów wyszukiwania, weź pod uwagę regionalne ustawienia serwera Exchange. Na przykład data 20 lipca 2018 r. Może wskazywać:
- 07/20/2018
- 20/07/2018
- 20-lip-2018
- 20 lipca 2018 r
A jeśli pojawi się błąd „Parser KQL zgłosił wyjątek ...” po uruchomieniu polecenia Search-Mailbox, oznacza to, że używasz niewłaściwego formatu czasu.
Aby wyszukać wiadomości e-mail wysłane w określonym dniu, użyj zapytania:
-SearchQuery wysłane: 07/20/2018
Jeśli musisz określić zakres dat (wyszukaj litery otrzymane w określonym czasie):
-SearchQuery Otrzymano: 20/20/2018 ... 07/20/2018
Kolejny przykład Szukamy listów otrzymanych przed 7 lipca:
-SearchQuery Otrzymano:> $ ('07 / 07/2018 ')
-SearchQuery wysłano: „01/07/2018 ... 07/20/2018” ORAZ otrzymano: „01/07/2018 ... 07/20/2018
W związku z tym musisz użyć takich konstrukcji w SearchQuery:
- na adres: [email protected]
- Otkot: „[email protected]”
- temat: „Tema jest taka”
Zagrożenie Dlatego nie lubię używać rosyjskich wersji produktów!
Ograniczenia skrzynki wyszukiwania
Zespół Search-Mailbox ma znaczne ograniczenia; może zwrócić tylko 10 000 elementów, po czym zwróci błąd
Wysłanie danych do polecenia zdalnego nie powiodło się z następującym komunikatem o błędzie: Całkowita liczba danych otrzymanych od klienta zdalnego przekroczyła dozwolone maksimum. Dozwolone maksimum to 524288000.
Dlatego, aby usunąć więcej elementów, musisz uruchomić polecenie cmdlet Wyszukaj skrzynkę pocztową kilka razy lub podziel pole na grupy według bazy danych poczty lub serwera.
Get-Mailbox -Database mskdb | Search-Mailbox -SearchQuery 'from: [email protected]' -DeleteContent -Force
Innym problemem związanym z Search-Mailbox jest niska wydajność. Poszukiwanie dużej organizacji może potrwać kilka dni.
Szybko znajduj i usuwaj wiadomości e-mail w programie Exchange 2016 za pomocą narzędzia New-ComplianceSearch
Exchange 2016 wprowadza nowy mechanizm szybkiego wyszukiwania i usuwania listów ze skrzynek pocztowych użytkowników.
Za pomocą następujących poleceń możesz znacznie zawęzić wyszukiwanie:
New-ComplianceSearch -Nazwa FastSearch1 -ExchangeLocation all -ContentMatchQuery 'z: „[email protected]” ”
Rozpocznij wyszukiwanie zgodności - Identyfikacja FastSearch 1
Zespoły te pracują na kilku tysiącach pudeł w ciągu kilku minut.
Otrzymujemy listę pól spełniających kryteria wyszukiwania:
$ search = Get-ComplianceSearch -Identity FastSearch1
$ results = $ search.SuccessResults
$ mbxs = @ ()
$ lines = $ results -split '[\ r \ n] +'
foreach ($ linia w $ linii)
if ($ line -match 'Lokalizacja: (\ S +) ,. + Liczba pozycji: (\ d +)' - i $ dopasowania [2] -gt 0)
$ mbxs + = $ dopasowania [1]
Teraz możesz zacząć od usunięcia liter za pomocą Search-Mailbox tylko w znalezionych skrzynkach pocztowych:
$ mbxs | Pobierz skrzynkę pocztową | Wyszukaj skrzynkę pocztową -SzukajQuery od: „[email protected]” „-DeleteContent -Force
Całkowity czas wyszukiwania i usuwania liter jest kilkakrotnie skrócony, szczególnie w dużych organizacjach.
Teraz możesz usunąć wyniki wyszukiwania:
Remove-ComplianceSearch -Identity FastSearch1