Определение учетной записи для олицетворения
Узнайте, как приложение-служба использует EWS для идентификации пользователя для олицетворения.
Приложение службы определяет учетную запись пользователя для олицетворения с помощью одного из следующих трех идентификаторов:
Основной SMTP-адрес.
Имя субъекта-пользователя (UPN).
Идентификатор безопасности (SID).
Используемый идентификатор зависит, конечно, от сведений, доступных в приложении.
Определение учетной записи пользователя для олицетворения
Приложение может использовать управляемый API EWS или запросы SOAP EWS для идентификации учетной записи пользователя, которую оно олицетворяет. Управляемый API EWS использует свойство ExchangeService.ImpersonatedUserId для идентификации олицетворенного пользователя. EWS использует элемент ExchangeImpersonation , как показано в следующем фрагменте XML.
<soap:Header>
<t:ExchangeImpersonation>
<t:ConnectingSID>
Identifier
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
В каждом из следующих разделов показано, как использовать один из идентификаторов. Пример, показывающий идентификатор олицетворения в действии, см. в разделе Добавление встреч с помощью олицетворения Exchange.
Использование SMTP-адреса электронной почты для идентификации учетной записи пользователя
SMTP-адрес электронной почты — это основной адрес электронной почты, связанный с учетной записью пользователя.
В приложении управляемого API EWS укажите адрес электронной почты SMTP вместе со значением перечисления ConnectingIdType.SMTP .
exchangeServiceInstance.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SMTP, "alisa@contoso.com");
В запросе SOAP EWS элемент PrimarySmtpAddress содержит адрес электронной почты для учетной записи пользователя.
<soap:Header>
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:PrimarySmtpAddress>alisa@contoso.com</t:PrimarySmtpAddress>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
Использование имени участника-пользователя для идентификации учетной записи пользователя
Имя участника-пользователя содержит полное доменное имя (FQDN) для расположения учетной записи пользователя. Это не обязательно домен почтового ящика пользователя. Атрибут UserPrincipalName должен быть правильно задан в учетной записи пользователя в доменные службы Active Directory (AD DS) для успешного поиска пользователя.
В приложении управляемого API EWS укажите имя участника-пользователя вместе со значением перечисления ConnectingIdType.PrincipalName .
exchangeServiceInstance.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.PrincipalName, "alias@billing.contoso.com");
В запросе SOAP EWS элемент PrincipalName (ConnectingSIDType complexType) (EWS) содержит имя участника-пользователя для учетной записи пользователя.
<soap:Header>
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:PrincipalName>alisa@billing.contoso.com</t:PrincipalName>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
Использование идентификатора безопасности для идентификации учетной записи пользователя
Идентификатор безопасности — это идентификатор учетной записи, олицетворенной в форме языка определения дескриптора безопасности (SDDL).
В приложении управляемого API EWS укажите идентификатор безопасности вместе со значением перечисления ConnectingIdType.SID .
exchangeServiceInstance.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SID, "S-1-5-21-1493619105-1843311271-3936346804-1118");
В запросе SOAP EWS элемент SID содержит идентификатор безопасности для учетной записи пользователя.
<soap:Header>
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:SID>S-1-5-21-1493619105-1843311271-3936346804-1118</t:SID>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>