AddDelegate-Vorgang

Der AddDelegate-Vorgang fügt dem Postfach eines Prinzipals einen oder mehrere Stellvertretungen hinzu und legt bestimmte Zugriffsberechtigungen fest.

SOAP-Header

Der AddDelegate-Vorgang kann die SOAP-Header verwenden, die in der folgenden Tabelle aufgeführt und beschrieben werden.

Header Element Beschreibung
Identitätswechsel
ExchangeImpersonation
Identifiziert den Benutzer, für den die Clientanwendung einen Identitätswechsel durchführt.
MailboxCulture
MailboxCulture
Gibt die RFC3066-Kultur an, die für den Zugriff auf das Postfach verwendet wird.
RequestVersion
RequestServerVersion
Gibt die Schemaversion für die Vorgangsanforderung an.
ServerVersion
ServerVersionInfo
Gibt die Version des Servers an, der auf die Anforderung geantwortet hat.

AddDelegate-Anforderungsbeispiel

Beschreibung

Das folgende Beispiel einer AddDelegate-Anforderung zeigt den Versuch, user1-Stellvertretungsberechtigungen für Ordner zu erteilen, die sich im Besitz von user2 befinden. User1 erhält Berechtigungen auf Author-Ebene für den Ordner "Kalender" von User2 und Berechtigungen auf Reviewer-Ebene für den Ordner "Kontakte" von User2. User1 empfängt keine Kopien von Besprechungsnachrichten und kann keine privaten Elemente im Postfach von User2 anzeigen. Besprechungsanfragen werden sowohl an user1 als auch an user2 gesendet.

Code

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Header>
    <t:RequestServerVersion Version="Exchange2007_SP1"/>
  </soap:Header>
  <soap:Body xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
    <AddDelegate>
      <Mailbox>
        <t:EmailAddress>user2@example.com</t:EmailAddress>
      </Mailbox>
      <DelegateUsers>
        <t:DelegateUser>
          <t:UserId>
            <t:PrimarySmtpAddress>user1@example.com</t:PrimarySmtpAddress>
          </t:UserId>
          <t:DelegatePermissions>
            <t:CalendarFolderPermissionLevel>Author</t:CalendarFolderPermissionLevel>
            <t:ContactsFolderPermissionLevel>Reviewer</t:ContactsFolderPermissionLevel>
          </t:DelegatePermissions>
          <t:ReceiveCopiesOfMeetingMessages>false</t:ReceiveCopiesOfMeetingMessages>
          <t:ViewPrivateItems>false</t:ViewPrivateItems>
        </t:DelegateUser>
      </DelegateUsers>
      <DeliverMeetingRequests>DelegatesAndMe</DeliverMeetingRequests>
    </AddDelegate>
  </soap:Body>
</soap:Envelope>

AddDelegate-Antwortbeispiel

Beschreibung

Das folgende Beispiel einer AddDelegate-Antwort zeigt eine erfolgreiche Antwort auf eine AddDelegate-Anforderung .

Code

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Header>
    <t:ServerVersionInfo MajorVersion="8" 
                         MinorVersion="1" 
                         MajorBuildNumber="206" 
                         MinorBuildNumber="0" 
                         Version="Exchange2007_SP1" 
                         xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
  </soap:Header>
  <soap:Body>
    <m:AddDelegateResponse xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" 
                           ResponseClass="Success" 
                           xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">
      <m:ResponseCode>NoError</m:ResponseCode>
      <m:ResponseMessages>
        <m:DelegateUserResponseMessageType ResponseClass="Success">
          <m:ResponseCode>NoError</m:ResponseCode>
          <m:DelegateUser>
              <t:UserId>
                <t:SID>S-1-5-21-1333220396-2200287332-232816053-1116</t:SID>
                <t:PrimarySmtpAddress>User1@example.com</t:PrimarySmtpAddress>
                <t:DisplayName>User1</t:DisplayName>
              </t:UserId>
              <t:ReceiveCopiesOfMeetingMessages>false</t:ReceiveCopiesOfMeetingMessages>
            <t:ViewPrivateItems>false</t:ViewPrivateItems>
            </m:DelegateUser>
        </m:DelegateUserResponseMessageType>
      </m:ResponseMessages>
    </m:AddDelegateResponse>
  </soap:Body>
</soap:Envelope>

AddDelegate-Fehlerantwortbeispiel

Beschreibung

Das folgende Beispiel zeigt die Antwort auf eine Anforderung zum Hinzufügen eines Delegaten, der dem Postfach des Prinzipals bereits hinzugefügt wurde.

Code

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Header>
    <t:ServerVersionInfo MajorVersion="8" 
                         MinorVersion="1" 
                         MajorBuildNumber="206" 
                         MinorBuildNumber="0" 
                         Version="Exchange2007_SP1" 
                         xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
  </soap:Header>
  <soap:Body>
    <m:AddDelegateResponse xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
                           ResponseClass="Success"
                           xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">
      <m:ResponseCode>NoError</m:ResponseCode>
      <m:ResponseMessages>
        <m:DelegateUserResponseMessageType ResponseClass="Error">
          <m:MessageText>The user is already a delegate for the mailbox.</m:MessageText>
          <m:ResponseCode>ErrorDelegateAlreadyExists</m:ResponseCode>
          <m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
        </m:DelegateUserResponseMessageType>
      </m:ResponseMessages>
      </m:AddDelegateResponse>
  </soap:Body>
</soap:Envelope>

Kommentare

Wenn der ErrorDelegateAlreadyExists-Antwortcode zurückgegeben wird, wenn Sie versuchen, einen Delegaten hinzuzufügen, verwenden Sie den GetDelegate-Vorgang , um alle aktuellen Berechtigungen für den Delegaten abzurufen, und verwenden Sie dann den UpdateDelegate-Vorgang , um die neuen Berechtigungen festzulegen.

Siehe auch