Frage

Hat jemand verwendet Delegierten mit exchnage Web-Service? Ich möchte ein Benutzer in der Lage sein, andere Benutzer zu steuern, die Kalender in Exchange. Ich finde dieses Problem ein wenig schwierig zu sein, und ich würde gerne sehen, wie andere in der Lage gewesen, um es richtig zu arbeiten.

War es hilfreich?

Lösung

Ich bin gerade hier angefangen, aber ich schaffte es den Zugriff auf Ressourcen Kalender über ein Delegat-Konto zu erhalten.

habe ich die Empfehlungen von diesem Artikel über Stellvertreterkonto und Ressourcenkonten. (Resource-Konten sind schwierig, weil sie in dem AD deaktiviert sind, und Sie haben ein Delegat-Konto verwenden, um Zugang zu ihnen zu bekommen)

Nach dem Einstellen der Delegat-Konto auf dem Server auf, stelle ich die ExchangeServerBinding up mit den Anmeldeinformationen des Delegat-Konto:

ExchangeServiceBinding binding = new ExchangeServiceBinding();
binding.Url = @"https://dc1.litwareinc.com/ews/exchange.asmx";
// Setup binding with username and password of the delegate account
binding.Credentials = 
    new NetworkCredential(delegateuserName, delegatepassword, "litwareinc.com");

( Ich bin mit Microsofts zum Testen virtuelles Server-Image bereit )

Dann, wenn die Mailbox zugreifen, habe ich eine FindItemType Anfrage und verwenden Sie die SMTP-Adresse des Kontos ich möchte Zugang:

// Prepare request
var findItemRequest = new FindItemType();
// Setup the mailbox using the smtp address of the account wanted
var mailbox = new EmailAddressType {EmailAddress = mailboxId};
findItemRequest.ParentFolderIds = 
    new[] {new DistinguishedFolderIdType {Mailbox = mailbox}};
((DistinguishedFolderIdType) findItemRequest.ParentFolderIds[0]).Id = 
    DistinguishedFolderIdNameType.calendar;
findItemRequest.Traversal = ItemQueryTraversalType.Shallow;

// Add ItemResponseShapeType and Calendarview to request here ...

// The create a FindItemResponseType using the binding and the request
var response = binding.FindItem(findItemRequest);

Also kurz gesagt:

  1. Setup ein Konto mit Stellvertretungszugriff auf dem Exchange-Server, kann dies über owa oder mit einem Exchange-Shell-Skript ausgeführt werden
  2. Verwenden Sie das Konto mit Stellvertretungszugriff auf das ExchangeServiceBinding Objekt
  3. Zugriffszielkonto eines FindItemType mit dem Zielkonto smtp-addres als EmailAddressType
  4. mit

Viele Grüße Jesper Hauge

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top