Я использовал curl и Outlook REST API v1.0 (с базовой аутентификацией) для создания событий календаря в календарях Outlook.Базовая аутентификация вскоре устареет, поэтому я сейчас пытаюсь перейти на Microsoft Graph v1.0 с OAuth 2. У меня есть некоторый путь в будущем, но я застрял в «ErrorAccessDenied» при запуске POST для создания события.Это то, что я сделал до сих пор:
Зарегистрировал мое приложение (curl) здесь: https://apps.dev.microsoft.com/#/appList, установка разрешений для приложений на Calendars.ReadWrite (и, если быть точным,Также делегированы разрешения для Calendars.ReadWrite.)
Используя идентификатор клиента / приложения и секретный пароль / пароль клиента из шага 1 выше, я могу получить токен доступа с помощью этой команды:
curl -X POST -k -d "grant_type = client_credentials & client_id = [ApplicationID] & client_secret = [пароль] & resource = https% 3A% 2F% 2Fgraph.microsoft.com% 2F" https://login.microsoftonline.com/[TenantID]/oauth2/token
Затем я пытаюсь создать событие, используя следующую команду, но получаю ошибку ErrorAccessDenied ниже:
curl.exe -k -o "C: \ Temp \ output.txt" -X POST-H "Тип контента: application / json" -H "Авторизация: Носитель [TOKEN]" -d @ "C: \ Temp \ eventDetails.json" https://graph.microsoft.com/v1.0/users/[UserPrincipalName]/calendars/[CalendarID]/events?$select=Id,lastModifiedDateTime
{"error": {"code ":" ErrorAccessDenied "," message ":" Доступ запрещен. Проверьте учетные данные и повторите попытку. "," innerError ": {" request-id ":" 38b802b9-08b9-4e0b-8f91-66ef56c459f8 "," date ": "2018-10-17T01: 08: 22"}}}
Помимо настройки разрешений приложения зарегистрированного приложения для Calendars.ReadWrite (шаг 1 выше) Я не знаю, как разрешить доступ.Любая помощь будет принята с благодарностью.
Спасибо.