Exchange 2010 한글OS에서 발생할 수 있는 Search-Mailbox 검색 이슈

 

며칠 전 고객사를 지원하다가 발견한 이슈인데 비슷한 이슈를 겪을 분들이 많으실것 같아 공유합니다.

(문제)
Exchange 사서함에서 제목의 특정 키워드가 포함된 메일을 일괄적으로 삭제하는 방법

(환경)
Exchange Server 2010 SP1

(내용)
이미 많은 분들이 알고 있으시듯이 Exchange 2010 RTM에서는 Export-Mailbox 구문을 통해서 아래와 같이 사서함에서 아이템들을 삭제할 수 있었습니다.

Export-Mailbox <Alias> –SubjectKeywords “<Keyword>” –DeleteContent
https://technet.microsoft.com/en-us/library/aa998579.aspx

하지만 Exchange 2010 서비스팩1 출시와 함께 Export-Mailbox 구문은 New-MailboxExportRequest 로 변경되면서 더 이상 –DeleteContent 파라미터는 지원되지 않습니다.

SP1에서는 Search-Mailbox 명령어에 –DeleteContent 파라미터를 통해서 이러한 기능을 제공합니다.
DeleteContent 파라미터를 사용하기 위해서는 우선적으로 RBAC 권한에서 “Mailbox Import Export” 역할을 사용자에게 부여해야 합니다.

1. Mailbox Import Export 역할을 사용자에게 할당.
New-ManagementRoleAssignment –Role “Mailbox Import Export” –User <Alias>

2. Search-Mailbox명령어로 제목에 특정 키워드가 포함된 메일을 삭제
Search-Mailbox <Alias> –SearchQuery “subject:keyword” –DeleteContent

3. SearchQuery 파라미터에 검색조건에 사용되는 카테고리는 Windows Advanced Search Query 를 사용합니다.
때문에 제목을 조건으로 사용할 경우에는 Subject: 를 사용할 수 있으며 From: 으로 보낸사람을 조건으로 검색할 수 도 있습니다.

Windows Search Advanced Query Syntax
https://www.microsoft.com/windows/products/winfamily/desktopsearch/technicalresources/advquery.mspx

영문 windows 2008 을 사용하시는 분들은 위의 명령어로 정상적으로 제목에 특정 키워드가 포함된 아이템을 검색하거나 삭제할 수 있습니다만 한글OS를 사용하시는 분들은 아래와 같이 InvalidArgument 오류를 겪을 것입니다.

image

4. 이유는 검색조건에 사용되는 카테고리가 한글화되어 한글로 입력해주셔야 합니다. 그럼 아래처럼 다시 입력하면 정상적으로 결과가 리턴되어야할것으로 보이나 실제로 아래 명령어는 동일하게 InvalidArgument 오류를 리턴합니다.

Search-Mailbox –Identity <alias> –SearchQuery “제목:’Keyword’ –DeleteContent

5. 이러한 부분의 한글화의 문제로 제목에 특정 키워드를 포함한 메일을 검색하거나 삭제하기 위해서는 아래처럼 –SearchQuery구문의 카테고리로 제목: 이 아닌 주제: 로 검색해야 정상적으로 명령어가 실행됩니다.

Search-Mailbox –Identity <alias> –SearchQuery “주제:’Keyword’ –DeleteContent

위의 이슈는 아이템삭제시의 SearchQuery를 예로 들었으나 Search-Mailbox 및 검색에 사용되는 모든 명령어에서 동일하게 적용됩니다.
해당 한글화 문제는 본사에 요청하여 다시 검토할 예정입니다.

Dyjung