[이슈]

OWA에서는 상단의 검색 창 또는 더 정교한 검색을 위해 검색 필터를 통해 메일 항목을 검색할 수 있습니다.

아래 이미지는 각각 [‘상단의 검색창 검색 방식()] /  [‘검색 필터 – 보낸/받는 사람’ 으로 검색 방식()]입니다.

아래에 안내된 동작 방식의 차이로 인해 아래 이미지와 같이 Display Name에 ")"가 1개 포함된 경우 OWA에서 검색 필터로 해당 사용자를 보낸 사람 또는 받는 사람으로 추가하여 메일 항목을 검색하면 메일 항목이 검색되지 않습니다.

 

[동작 방식]

위 일반 검색 창과 검색 필터를 통한 검색 동작 방식에는 차이가 있는데 [‘검색 필터 – 보낸/받는 사람’ 으로 검색 방식(우)]을 사용하여 검색 시에 Json 로그를 살펴보면 "SearchTerms" 배열에 좀 더 정교한 검색어가 포함되어 있습니다.

아래 이미지의 왼쪽은 상단 일반 검색 / 오른쪽은 검색 필터로 검색한 Fiddler Json 로그입니다.

자세히 보면 왼쪽 일반 검색 로그에서 자동으로 쿼리구조상 방해가 되는 괄호“)”를 제거 후 검색하는 방식으로 동작하는 것을 확인할 수 있습니다.

QueryString을 자세히 확인하면 사용자 Display Name에 ")" 괄호가 포함되어있는 경우, ‘검색 필터 – 보낸/받는 사람’ 으로 해당 사용자 메일 항목을 검색하면 원래는 호출 구문이 "QueryString": "(from:() OR from:())"가 정상 요청 형태인데 괄호가 추가됨으로 인해 "QueryString": "(from:()) OR from:())"로 구조가 변조되면서 메일 항목이 검색되지 않는 것입니다.

아래는 일반 검색(상단)에서 검색한 QueryString 호출 구문

아래는 검색 필터를 통해 검색한 QueryString 호출 구문 - ")"가 포함되어 검색됩니다.

[해결 방안]

이런 경우는 사용자 Display Name에서 괄호를 제거하여 정상적으로 검색 필터 기능을 통해 사용자 메일 항목을 검색하게 하거나, Display Name에 "("를 아래와 같이 추가해주면 호출 구문이 변조되지 않고 문자로 인식되어 정상적으로 메일 항목이 검색되게 할 수 있습니다.

+ Recent posts