2014-09-13 4 views
6

Я создаю WPF-приложение, которое делает сводку нескольких пользовательских календарей в организации. Компания использует Office 365, поэтому я подумал, что API Office 365 будет лучшим способом.Доступ к кадру другого пользователя в Office 365 API

Мне удалось получить доступ к моему собственному календарю, но я не знаю, как получить доступ к календарям моих коллег. Возможно ли это? Мне также нужно указать GAL, чтобы выбрать, какие пользователи, которых я хотел бы включить в резюме.

ответ

9

[UPDATE] Служба поддержки учетных записей доступна для API REST. Для получения дополнительной информации см. Building Daemon or Service Apps with Office 365 Mail, Calendar, and Contacts APIs (OAuth2 client credential flow).

Спасибо за ваш вопрос и интерес в API Office 365! В настоящее время вы можете использовать API Office 365 для доступа к календарю аутентифицированного пользователя, но не к кадру другого пользователя. Включение учетной записи службы, которая будет авторизована для доступа к почте/календарю/контактам нескольких пользователей в организации или всей организации, находится в нашей дорожной карте и имеет приоритетное значение в отношении очень высоких значений, поэтому следите за обновлениями.

В то же время вы можете использовать управляемый API веб-служб Exchange (EWS) для реализации вашего приложения. Однако при использовании олицетворения приложения EWS учетная запись службы имеет доступ на чтение/запись во весь почтовый ящик пользователя, а не только календарь. Как только мы добавим поддержку учетных записей службы в API Office 365, вы сможете использовать OAuth и область доступа к приложению, чтобы читать только календарь пользователя.

Вот несколько ссылок, объясняющих, как работает олицетворение приложения EWS.

Пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы или нужна дополнительная информация.

Спасибо,

Venkat

+2

Любые обновления с доступом API к кадру другого пользователя? – Serge

+0

@venkat любые обновления по этому вопросу? можем ли мы получить доступ к кадру другого пользователя? –

+0

Пока нет, извините. Это все еще работает. Благодарю. –

3

Да, это возможно с проверкой подлинности (но не с OAuth2). Кроме того, ваша учетная запись должна иметь доступ к чтению в календари ваших коллег (это может быть сделано администратором, установив права на папку с почтовыми ящиками).

var authClearText = string.Format("{0}:{1}", yourEmail, yourPassword); 
var authEncoded = Convert.ToBase64String(Encoding.Default.GetBytes(authClearText)); 
var authHeaderValue = "Basic " + authEncoded; 

using (var httpClient = new HttpClient()) 
{ 
    httpClient.DefaultRequestHeaders.Add("Authorization", authHeaderValue); 
    ... 
} 
Смежные вопросы