首页 > 解决方案 > 不推荐使用基本身份验证时的 Python O365 身份验证

问题描述

我有一个脚本(不是我写的),它使用基本身份验证来在线访问邮箱。该脚本使用以下代码:

from O365 import Connection

Connection.login(user, password)

最近失败了。做了一些研究,我得到了以下错误:

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

我发现了一些信息https://aka.ms/BasicAuthDeprecated

去年,我们宣布在 2018 年 11 月,我们将停止在 Office 365 Outlook REST API v1.0 中支持基本身份验证,这是一个后续公告,重申我们将在 Outlook REST API v1.0 中停用基本身份验证月。这意味着从 2018 年 12 月开始,新应用或现有应用将无法在 v1.0 和 Beta 版 Outlook REST API 中使用基本身份验证。

如果您一直在应用程序的 Office 365 Outlook REST API v1.0/Beta 中使用基本身份验证,则应立即转换到基于 Microsoft Graph 的 Outlook REST API 以继续访问 Exchange Online 数据。

Web 身份验证不是我的强项,我不确定我需要在这里做什么。看起来需要某种注册/令牌生成。

标签: pythonauthenticationoutlook

解决方案


您将需要使用 OAuth 进行 O365 身份验证,因为不再支持 BasicAuth。

https://pypi.org/project/O365/#authentication详细介绍了 Python 库与 OAuth 的集成。


推荐阅读