Shareplum认证报错[AADSTS50126]:无MFA仍提示凭据无效求助
针对你遇到的AADSTS50126认证错误,给出以下排查和解决步骤:
确认账号密码有效性
直接用代码里的账号密码登录SharePoint网页版,验证是否能正常访问。如果网页登录失败,说明可能密码过期、账号被锁定,联系管理员处理即可;如果网页能正常登录,再检查代码里的账号密码是否输入有误,尤其是特殊字符(如@、!)是否准确。升级Shareplum版本
2022年11月微软调整了认证接口,旧版本Shareplum可能无法适配。执行以下命令升级到最新版:pip install --upgrade shareplum升级后重新运行代码测试。
检查租户认证策略
即便未启用MFA,租户可能开启了安全默认值或其他限制密码认证的策略,此时改用App认证更稳定:- 在Azure AD中注册应用,为其分配SharePoint相关权限(如Sites.ReadWrite.All)
- 使用客户端ID和密钥替换账号密码认证,示例代码:
from shareplum import Site from shareplum import Office365 website = "https://xxxxxx.sharepoint.com" site_url = "https://xxxxxx.sharepoint.com/sites/your-site" # 替换为你的实际站点URL app_id = "你的客户端ID" app_secret = "你的客户端密钥" authcookie = Office365(website, client_id=app_id, client_secret=app_secret).GetCookies() site = Site(site_url, authcookie=authcookie)
修正代码变量错误
原代码中site = Site(sharepointSite, ...)里的sharepointSite是未定义变量,必须替换为完整的站点URL(如https://xxxxxx.sharepoint.com/sites/你的站点名),不能直接使用根域名。
内容的提问来源于stack exchange,提问作者eaglebird
相关产品推荐
相关产品推荐

