Jak usunąć określone wiadomości z serwera Exchange 2010

This post is also available in: angielski

 

Czasami administrator serwera Exchange musi usunąć określoną wiadomość która trafiła do skrzynek lub znajduje się w kolejkach serwera Exchange.

 

Usunięcie emaili ze skrzynek znajdujących się na Exchange 2010:

Aby miec możliwość usunięcia wiadomości znajdujących się w skrzynkach, musimy administratorowi nadać odpowiednią rolę w Exchange 2010 RBAC Mailbox Export Import Role.

Wiadomości ze skrzynek możemy usunąć za pomocą polecenia Search-Mailbox.

Konto użytkownika który będzie usuwał wiadomości ze skrzynek musi dodatkowo być:

  • administratorem serwera Exchange
  • należeć do grupy lokalnych administratorów serwera
  • posiadać pełne uprawnienia do skrzynek

 

Aby dodać rolę Mailbox Import Export dla użytkownika Admin wykonujemy:

New-ManagementRoleAssignment –Role “Mailbox Import Export” –User “Admin”

 

Czasami wymagane jest nadanie uprawnień Full Access do wszystkich skrzynek, co możemy wykonać jak poniżej:

Get-Mailbox -ResultSize unlimited | Add-MailboxPermissions -User Admin -AccessRights FullAccess -InheritanceType all

Po zakończeniu operacji usuwania poszukiwanego emaila należy cofnąć uprawnienia Full Access Admina do wszystkich skrzynek jak poniżej:

Get-Mailbox -ResultSize unlimited |Remove-MailboxPermissions -User Admin -AccessRights FullAccess -InheritanceType all

 

Aby przeszukać wszystkie skrzynki na serwerze MBX1 w celu znalezienia wiadomości której temat zawiera słowo Important Message i skopiować wynik tego wyszukiwania do skrzynki SearchMailbox wykonujemy:

Get-Mailbox -Server  "MBX1" -ResultSize Unlimited | Search-Mailbox -SearchQuery 'Subject:"*Important Message*" -targetmailbox "*SearchMailbox*" -targetfolder "*SearchFolder*" -logonly -loglevel full

Jeżeli chcemy usunąć wszystkie wiadomości spełniające określone kryteria dla tematu oraz treści wiadomości, przeszukując wszystkie skrzynki wówczas używamy:

Get-Mailbox -Server  "MBX1" -ResultSize Unlimited | Search-Mailbox -SearchQuery 'Subject:"*Subject*" and Body:"*Body*"' -deletecontent

 

Jeżeli przed usunięciem wiadomości chcemy je skopiować w bezpieczne miejsce do innej skrzynki możemy skorzystać z:

Get-Mailbox -Server  "MBX1" -ResultSize Unlimited | Search-Mailbox -SearchQuery 'Subject:"*Subject*" and Body:"*Body*"' -targetmailbox "*SearchMailbox*" -targetfolder "*SearchFolder*" -loglevel full -deletecontent

Aby pominąć pytania o potwierzenie usunięcia wiadomości, na końcu polecenia możemy użyć parametru -Force jak poniżej:

Get-Mailbox -Server  "MBX1" -ResultSize Unlimited | Search-Mailbox -SearchQuery 'Subject:"*Subject*" and Body:"*Body*"' -targetmailbox "*SearchMailbox*" -targetfolder "*SearchFolder*" -loglevel full -deletecontent -Force

 

Poniższy przykład kopiuje i usuwa wszystkie wiadomości w skrzynce mailboxname wysłane między 20 a 25 września:

Search-Mailbox -identity "mailboxname" -SearchQuery "Sent:> $('2012-09-20') and Sent:< $('2012-09-25')" -Confirm:$false -Force -TargetMailbox "targetuser" -TargetFolder "SearchAndDeleteLog" -LogLevel Full -DeleteContent -Force

 

Aby usunąć wszystkie wiadomości otrzymane które znajdują się w skrzynce JohnSmith i są starsze niż 2 dni:

Search-Mailbox -identity JohnSmith -searchQuery "Received:< $(get-date).addDays(-2)" -DeleteContent -whatif

jeżeli na końcu polecenia umieścimy parametr -WhatIf wówczas zostanie zwrócona informacja co dane polecenie spowoduje.

Aby usunąć wszystkie wiadomości otrzymane pomiędzy datami:

Search-Mailbox -Identity “mailbox_name” -SearchQuery “Received:> $(’10/01/2012') and Received:< $(’10/05/2012')” -DeleteContent

 

 

 Usunięcie wiadomości z kolejek transportowych Microsoft Exchange 2010:

 

Aby wstrzymać dostarczenie wiadomości od określonego nadawcy znajdujących się w kolejkach transportowych możemy użyć poniższego polecenia:

Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | Where {$_.fromaddress -like "*virus@domain.com*"} | Susspend-Message

 

Jeżeli chcemy usunąć wiadomości od określonego nadawcy które znajdują się w kolejkach transportowych, możemy użyć poniższego polecenia:

Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | Where {$_.fromaddress -like "*virus@domain.com*"} | Remove-Message -WithNDR $False -Confirm $False

 

Aby usunąć wiadomości o określonym temacie z kolejek transportowych Exchange 2010 korzystamy z polecenia::

Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | Where {$_.Subject -like "*virus*"} | Remove-Message -WithNDR $False -Confirm $False

 

 

Print Friendly
Otagowany , , , , , .Dodaj do zakładek permalink.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>