You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SPMT进行SharePoint Online迁移时报身份验证错误如何解决?

问题根源

  • 站点URL配置错误:你填写的$Global:SPOUrl是文档库的视图页面地址,而SPMT要求TargetSiteUrl参数传入站点根地址,不能携带库路径、视图路径后缀,这是直接触发参数校验失败的常见原因。
  • 多因素认证适配问题:租户开启MFA后,传统的用户名密码凭据无法完成认证,缺少动态验证码验证环节,这是你反复核对密码仍报错的核心原因。

解决步骤

1. 修正站点URL配置

将$Global:SPOUrl的值替换为站点根地址:
https://o365gcoslo.sharepoint.com/sites/it-test-team

2. 适配MFA认证逻辑

分两种使用场景选择适配方案:

交互式运行场景(有人工操作窗口)

直接删除硬编码凭据的逻辑,调用Register-SPMTMigration时不传入-SPOCredential参数,模块会自动弹出官方登录窗口,完成账号密码输入+MFA二次验证后即可自动获取认证上下文,不需要额外编码处理验证码逻辑。

修正后的参考代码:

Import-Module Microsoft.SharePoint.MigrationTool.PowerShell 
# 修正为站点根地址
$Global:SPOUrl = "https://o365gcoslo.sharepoint.com/sites/it-test-team"

# 定义迁移参数
$Global:FileshareSource = "I:\Applications\Temp_PTAX"
$Global:TargetListName = "Temp Location"

# 无凭据参数注册,自动弹出支持MFA的登录窗口
Register-SPMTMigration -Force

# 添加迁移任务
Add-SPMTTask -FileShareSource $Global:FileshareSource -TargetSiteUrl $Global:SPOUrl -TargetList $Global:TargetListName

Start-SPMTMigration -NoShow
$session = Get-SPMTMigration

无人值守运行场景(无人工介入)

需要提前在Azure AD中注册服务主体,为其分配SharePoint Online的站点全控制应用权限,使用客户端证书或客户端密钥完成认证,调用Register-SPMTMigration时传入应用ID、证书指纹/密钥参数即可完成认证,不需要MFA人工验证。

额外校验项

如果完成上述配置后仍报错,可将SPMT PowerShell模块升级到最新版本后重试,旧版本模块存在MFA适配、URL校验的已知问题。

内容的提问来源于stack exchange,提问作者kennastever

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 23:27:04