Проверка подлинности Python O365, когда обычная проверка подлинности устарела

У меня есть сценарий (который я не писал), который использует базовую аутентификацию для доступа к почтовым ящикам в Интернете. В скрипте используется следующий код:

from O365 import Connection

Connection.login(user, password)

Недавно он потерпел неудачу. Проведя небольшое исследование, я получил следующую ошибку:

'Basic Authentication for Outlook REST API is no longer supported...'

Я нашел информацию о https://aka.ms/BasicAuthDeprecated:

Last year, we announced that in November 2018, we will stop supporting Basic Authentication in the Office 365 Outlook REST API v1.0 and this is a follow up announcement to reiterate that we will be decommissioning Basic Authentication in Outlook REST API v1.0 this month. This means that new or existing apps will not be able to use Basic Authentication in v1.0 and Beta versions of Outlook REST API starting December 2018.

If you have been using Basic Authentication in Office 365 Outlook REST API v1.0/Beta in your app, you should immediately transition to Microsoft Graph- based Outlook REST APIs to continue accessing Exchange Online data.

Веб-аутентификация - не моя сильная сторона, и я не уверен, что мне здесь нужно делать. Похоже, требуется какая-то регистрация / генерация токена.

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
7 951
1

Ответы 1

Вам нужно будет использовать OAuth для аутентификации в O365, поскольку BasicAuth больше не поддерживается.

https://pypi.org/project/O365/#authentication содержит подробную информацию об интеграции библиотеки Python с OAuth.

Да, спасибо за ответ. Я нашел инструкции непонятными. Мне удалось зарегистрировать свое приложение, но было непонятно, как получить токен и подтвердить.

Windstorm1981 21.01.2019 15:17

Другие вопросы по теме

Почему пользователь может зарегистрироваться, не задав значение «обязательного атрибута» в AWS Cognito?
При входе в систему выдается ошибка "Неверное имя пользователя или пароль" при входе в систему
Аутентификация в Azure-AD с помощью Cordova
CakePHP 3.7 - Установить переменную вида из пользовательского класса аутентификации
Получение 403 при доступе к защищенным конечным точкам в SpringBoot, даже если роли совпадают и учетные данные пользователя верны
Функция Laravel logoutOtherDevices: после входа в систему выполняется перенаправление на последний использованный URL вместо домашнего
Проверка подлинности UWP NTLM с учетными данными Windows по умолчанию
Как аутентифицировать форму входа пользователя MVC с помощью токена JWT веб-API?
Codeigniter 3 с авторизацией от сообщества - случайным образом теряется переменная сеанса
Попытка проверить роли пользователей на панели инструментов