Exchange Server’da bir mailbox’a veya dağıtım gruplarına kullanıcılar yanlışlıkla mail gönderimi yapabilirler. Exchange Server’da PowerShell kullanarak posta kutularında e-posta araması yapabilir veya silebilirsiniz.
Bu işlemler için genellikle “Search-Mailbox – New-ComplianceSearch” setlerini kullanabilirsiniz.
Bu işlemleri gerçekleştireceğiniz kullanıcı için bazı yetki tanımlamaları yapılması gerekmektedir. (Administrator hariç :))
- Exchange Server’da (Exchange Online) Arama yapmak ve silmek için gereken yetkiler
- Exchange Search-Mailbox Kullanımı ve Posta Arama
- Exchange Server’da DeleteContent Kullanımı
Exchange Server’da (Exchange Online) Arama yapmak ve silmek için gereken yetkiler
Kullanmış olduğunuz hesaba aşağıdaki rolleri atamanız gerekmektedir, atama işlemini EMS kullanarak yapabildiğiniz gibi ECP üzerinden de gerçekleştirebilirsiniz.
- Mailbox Import Export
- Mailbox Search
PowerShell ile atamak için aşağıdaki komut setini kullanabilirsiniz;
New-ManagementRoleAssignment -User "cengizyilmaz" -Role "Mailbox Import Export"
“
New-ManagementRoleAssignment -User cengizyilmaz" -Role "Mailbox Search”
Exchange Online için kullanılması gereken set aşağıdaki gibidir;
Add-RoleGroupMember "Discovery Management" -member c@cengizyilmaz.net
New-RoleGroup "Mailbox Import-Export Management" -Roles "Mailbox Import Export"
Add-RoleGroupMember "Mailbox Import-Export Management" -Member c@cengizyilmaz.net
Exchange Search-Mailbox Kullanımı ve Posta Arama
Exchange’de posta kutularında e-posta kutularında arama yapabilirsiniz, bu işlem için EAC veya Search-Mailbox kullanabiliyorsunuz. Searc-Mailbox seti ile birlikte arama yapabileceğini mailbox’ı seçebilir veya özellik belirtebilirsiniz.
Exchange sunucunuzda bulunan bir mailbox için arama yapmak için aşağıdaki komut setini kullanabilirsiniz.
Search-Mailbox -Identity
“c@cengizyilmaz.net
“ -SearchQuery 'Subject:"
Test Maili"'
Exchange Server ortamınızda bulunan tüm posta kutularında arama yapmak için aşağıdaki komut setini kullanabilirsiniz;
Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery 'Subject:"
Test Maili"'
Exchange Online’da Search-Mailbox komut setini kullanırsanız aşağıdaki gibi bir uyarı alabilirsiniz, Microsoft daha hızlı bir sonuç vermesi için
New-ComplianceSearchNew-ComplianceSearchAction
setini kullanmanızı önermektedir.WARNING: On July 1, 2020, the Search-Mailbox cmdlet is being retired and Microsoft Support will no longer provide assistance. See https://go.microsoft.com/fwlink/?linkid=2113221 to learn more. WARNING: The Search-Mailbox cmdlet returns up to 10000 results per mailbox if a search query is specified. To return more than 10000 results, use the New-MailboxSearch cmdlet or the In-Place eDiscovery & Hold console in the Exchange Administration Center.
Exchange Server’da DeleteContent Kullanımı
Search-Mailbox seti ile arama yaptığınız mail itemslerini silebilirsiniz veya silmek isteyebilirsiniz. -deletecontent parametresi kullandığınızda işlemi gerçekleştirmek için sizden ikinci bir onay isteyecektir bu onay işlemini kaldırmak için -force parametresini kullanabilirsiniz.
Belirli bir kişiden gönderilmiş tüm postaların silinmesini isterseniz, kullanmanız gereken komut seti aşağıdaki gibidir;
Get-Mailbox –Server
cy-exc01 –ResultSize unlimited | Search-Mailbox -SearchQuery 'from:"
c@cengizyilmaz.net"' –DeleteContent –Force
Search-Mailbox parametresinde bir sınırlandırma bulunmaktadır, sadece 10.000 öge bulabilmektedir.
Bir dağıtım grubu üyelerine gelen içeriği silmek için aşağıdaki seti kullanabilirsiniz;
Get-DistributionGroupMember "DL Adı" | Search-Mailbox -SearchQuery:"Test Maili" -DeleteContent -Force:$True