Мы находимся в такой же ситуации. Вероятно, из-за закрытия REST API Outlook.office365.com и API Graph, который теперь используется по умолчанию: Как получить содержимое itemAttachment через API Microsoft Graph https://docs.microsoft.com/nl-be/graph/api/attachment-get?view=graph-rest-1.0#request-2
Теперь я собрал скрипт, чтобы сделать это правильно, и он работает. Но (1) он требует ввода пароля с графическим интерфейсом каждый раз, когда запускается скрипт (например, после сбоя питания), и после входа в систему (2) срок действия токена доступа продолжает истекать...
Invoke-RestMethod : {
"error": {
"code": "InvalidAuthenticationToken",
"message": "Access token has expired.",
"innerError": {
"request-id": "1c991403-ab46-4aec-a7a1-316dbdfb4eb8",
"date": "2019-01-16T12:29:50"
}
}
}
Теперь, когда вы попадаете в документацию и начинаете читать о таких вещах, как обновление токена и тому подобное... Это просто безумие! https://docs.microsoft.com/nl-be/graph/auth-v2-user
Я разработал интерфейс API для MailChimp, который я выполнил менее чем за ОДИН час... (1) сгенерировать ключ API в MailChimp, (2) использовать этот ключ API в своих сценариях и, при необходимости, (3) отозвать ключ в MailChimp в случае ЧП (СДЕЛАНО).
Этот токен M$ BS действительно сногсшибателен. Насколько я понимаю, вам нужно либо использовать инструмент администратора PowerShell, чтобы изменить токены на 90-дневную продолжительность по умолчанию (но, насколько я понимаю, на уровне сервера, а не на уровне приложения?), либо автоматически обновлять токен доступа каждые 5 минут в вашем скрипте.
Вот почему я сейчас рассматриваю возможность использования PSMSGraph, который, очевидно, сделает все это за вас: https://psmsgraph.readthedocs.io/en/latest/
Если вы хотите, чтобы он работал правильно, прежде чем я это сделаю, поделитесь своим кодом. Поскольку мое текущее решение требует ручного ввода пароля (кстати, я не понимаю, как я могу сделать это безголовым) и перестает работать через час из-за истечения срока действия токена.
Я уверен, что есть веская причина (безопасность) использовать этот способ токена доступа, но если способ MailChimp для создания токенов жизни ПРОСТО РАБОТАЕТ... Тогда я не понимаю, почему эта сложность токена доступа с Microsoft Graph API нужен в первую очередь.
person
helonaut
schedule
16.01.2019