私は、ユーザー交換カレンダーにアクセスする必要がある .NET アプリケーションを作成する任務を負っています。このアプリケーションはローカル ネットワークからのみアクセスされるため、Exchange にアクセスするには、現在のドメイン ユーザーの資格情報を自動的に使用する必要があります。
次のコードがありますが、「アカウントには、要求されたユーザーを偽装する権限がありません」というエラーが表示されます。
ExchangeService service = new ExchangeService();
service.UseDefaultCredentials = true;
string exchange = "exchangeWSURL";
service.Url = new Uri(exchange);
service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.PrincipalName, userid);
service.PreAuthenticate = true;
CalendarView cal = new CalendarView(startDate, startDate.AddDays(7));
FindItemsResults<Appointment> findResults = service.FindAppointments(WellKnownFolderName.Calendar, cal);
私は何か間違ったことをしているようです。ドメイン上のすべてのユーザーに対して偽装を有効にする必要があることを望んでいました。
どんな助けでも素晴らしいでしょう。