连接到 Exchange Online Protection PowerShell
本文包含有关如何使用 Exchange Online PowerShell 模块(无论是否使用多重身份验证 (MFA) )连接到 Exchange Online Protection PowerShell 的说明。
Exchange Online PowerShell 模块使用新式身份验证连接到 Microsoft 365 中的所有与 Exchange 相关的 PowerShell 环境:Exchange Online PowerShell、安全性 & 合规性 PowerShell 和独立的 Exchange Online Protection (EOP) PowerShell。 有关模块的详细信息,请参阅 关于 Exchange Online PowerShell 模块。
有关 Exchange Online Protection PowerShell 的详细信息,请参阅 Exchange Online Protection PowerShell。
注意
截至 2020 年 6 月,连接到独立 Exchange Online Protection PowerShell 和 Exchange Online PowerShell 的说明基本相同。 如果使用 Connect-IPPSSession cmdlet 和 ConnectionUri 参数值 https://ps.protection.outlook.com/powershell-liveid/
,则会重定向到 Connect-ExchangeOnline 用于 Exchange Online PowerShell 连接的同一https://outlook.office365.com/powershell-liveid/
终结点。
Exchange Online PowerShell 中的远程 PowerShell 连接已弃用。 有关详细信息,请参阅 在 Exchange Online 中弃用远程 PowerShell。
Exchange Online PowerShell V3 模块中的 REST API 连接需要 PowerShellGet 和 PackageManagement 模块。 有关详细信息,请参阅 PowerShellGet for 基于 REST 的连接在 Windows 中。
开始前,有必要了解什么?
安装和维护 Exchange Online PowerShell 模块中介绍了安装并使用模块的要求。
连接后,你有权或无权访问的 cmdlet 和参数都将由基于角色的访问控制 (RBAC) 进行控制。 有关详细信息,请参阅独立 EOP 中的权限。
提示
是否有任何疑问? 请在 Exchange Online Protection 论坛中寻求帮助。
使用具有或不带 MFA 的新式身份验证连接到 Exchange Online Protection PowerShell
这些连接说明使用新式验证,并处理或不使用多重身份验证 (MFA)。
步骤 1:加载 Exchange Online PowerShell 模块
注意
如果模块已安装,通常可以跳过此步骤并运行 Connect-ExchangeOnline ,而无需先手动加载模块。
安装模块后,打开 PowerShell 窗口,并通过运行以下命令加载模块:
Import-Module ExchangeOnlineManagement
步骤 2:连接并进行身份验证
注意
如果用于连接的帐户的配置文件路径包含特殊 PowerShell 字符, (例如,) , $
连接命令可能会失败。 解决方法是使用配置文件路径中没有特殊字符的其他帐户进行连接。
需要运行的命令使用以下语法:
Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false]
有关详细的语法和参数信息,请参阅 Connect-IPPSSession。
<UPN> 是用户主体名称格式的帐户, (例如
navin@contoso.onmicrosoft.com
) 。EXO V3 模块 (v3.0.0 或更高版本) 和 基本身份验证 (远程 PowerShell) 连接到 Exchange Online 时,你仅使用 REST API cmdlet。 有关详细信息,请参阅 EXO V3 模块中的 REST API 连接。
使用交互式登录提示连接到 Exchange Online Protection PowerShell
此示例适用于具有或不带 MFA 的帐户的 Windows PowerShell 5.1 和 PowerShell 7:
Connect-ExchangeOnline -UserPrincipalName navin@contoso.onmicrosoft.com
步骤 3:完成后断开连接
完成后,请务必断开会话的连接。 如果在未断开会话连接的情况下关闭 PowerShell 窗口,则可能会用尽所有可用会话,并且需要等待会话过期。 若要断开会话连接,请运行以下命令:
Disconnect-ExchangeOnline
若要在无确认提示的情况下以无提示方式断开连接,请运行以下命令:
Disconnect-ExchangeOnline -Confirm:$false
如何知道已成功连接?
Exchange Online Protection cmdlet 将导入到你的本地 Windows PowerShell 会话并通过进度条进行跟踪。 如果未收到任何错误,则说明已成功连接。 快速测试是运行 Exchange Online Protection cmdlet(例如 Get-AcceptedDomain),并查看结果。
如果收到错误,则查看以下要求:
常见问题是密码错误。 再次运行连接步骤,并密切关注使用的用户名和密码。
需要在本地计算机和 Microsoft 365 之间打开 TCP 端口 80 通信。 它可能已经打开了,但是要考虑你的组织是否存在严格的 Internet 访问政策。
如果客户端 IP 地址在连接请求期间发生更改,则可能无法连接。 如果你的组织使用包含多个 IP 地址的源网络地址转换 (SNAT) 池,则可能会发生这种情况。 连接错误如下所示:
对具有 ShellId <ID> 的 Windows 远程 Shell 的请求失败,因为在服务器上找不到 shell。 可能的原因包括:指定的 ShellId 不正确或 shell 在服务器上不再存在。 提供正确的 ShellId 或创建新的 shell,然后重试操作。
若要解决此问题,请使用包含单个 IP 地址的 SNAT 池,或强制使用特定 IP 地址连接到 Exchange Online Protection PowerShell 终结点。