Impersonation by Powershell


참조 URL
  1. Configuring Exchange Impersonation
  2. Configure Exchange Server 2010 Impersonation

 

 Exchange를 이용한 관련 프로그램을 개발하기 위해 EWS를 이용하게 될때 Impersonation 기능을 이용해 일반 사용자 계정으로 가장을 하여 사서함에 접근하도록 개발해야 한다. 가장을 하기 위해서는 해당 계정이 가장(Impersonation)을 할 수 있는 권한을 할당해 줘야 에러가 발생하지 않고 가장을 할 수 있다. 이 권한이 할당되어 있지 않으면 'ImpersonateionId = new ...' 할 때 에러가 발생한다. 이럴 때 아래와 같이 익스체인지 파워쉘에서 아래와 같이 입력해  가장 권한을 할당해 주면 에러 없이 개인 사서함에 접근해 정보에 접근할 수 있다.


New-ManagementRoleAssignment –Name:impersonationAssignmentName –Role:ApplicationImpersonation –User:serviceAccount 

[표1] 가장 권한 할당 예제


 위와 같이 설정을 하면 아래와 같은 코드에서 에러없이 가장을 할 수 있을 것이다.

_service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddressaddress);

[코드1] C# 코드에서 가장하기


위 코드와 같이 가장이 완성이 되면 개인 계정에 접근하여 읽기 및 메일 발송, 일정, 그룹등 아이템 생성 및 수정을 할 수 있다.

+ Recent posts