Powershell 如何实现需要使用MFA连接ExchangeOnline命令的自动化脚本?

Powershell 如何实现需要使用MFA连接ExchangeOnline命令的自动化脚本?,powershell,microsoft-graph-api,office365,exchange-server,Powershell,Microsoft Graph Api,Office365,Exchange Server,我正在尝试创建一个涉及连接到exchange online的自动化。我无法实现这一点,因为每当我使用提供的有效凭据发出Connect Exchange命令时,它都会请求MFA(多因素身份验证)——这是无法自动执行的。我如何用这个实现自动化?有什么想法吗?谢谢 $password = ConvertTo-SecureString 'MySecretPassword' -AsPlainText -Force $credential = New-Object System.Management.Aut

我正在尝试创建一个涉及连接到exchange online的自动化。我无法实现这一点,因为每当我使用提供的有效凭据发出Connect Exchange命令时,它都会请求MFA(多因素身份验证)——这是无法自动执行的。我如何用这个实现自动化?有什么想法吗?谢谢

$password = ConvertTo-SecureString 'MySecretPassword' -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ('user@company.com', $password)
Connect-ExchangeOnline -Credential $credential

要扩展怀疑论者提出的观点,您可以在AzureAD中创建服务主体,在Exchange Online中为其分配适当的权限,然后设置基于证书或基于客户端机密的身份验证。这种方法取代了用于运行脚本的现有交互用户,并且不涉及MFA,因为它不是传统用户

更多信息可在此处找到:

您当前不知道。设置SPN或使用未启用MFA的帐户。