使用 PowerShell 禁用对服务(协议)的访问 |办公室365
在本文中,我们回顾了 PowerShell cmdlet Set-CASMailbox 的使用,该命令用于禁用(或启用)对特定类型的邮件客户端或使用特定 Exchange 邮箱协议的邮件客户端的访问。
连接到 Exchange Online PowerShell
为了能够运行本文中指定的 PowerShell 命令,您需要连接到 Exchange Online PowerShell。
以管理员身份启动 Windows PowerShell 并运行 cmdlet Connect-ExchangeOnline。
Connect-ExchangeOnline禁用 Exchange 收件人邮箱访问 |各种协议和邮件客户端
Exchange 服务器最显着的优点之一是,他能够将 Exchange 邮箱“暴露”给各种类型的邮件客户端和各种邮件协议。
默认情况下,Exchange 服务器配置为允许 Exchange 客户端通过所有受支持的邮件客户端使用所有可用邮件协议。
在某些情况下,我们作为Exchange管理员,需要“阻止”Exchange客户端使用特定的协议或特定的邮件客户端。
例如,在我们的客户端遇到奇怪问题(例如邮件消失或其他问题)的情况下。
为了能够找到导致此问题的特定邮件客户端,我们可以实施一种故障排除方法,其中禁用除一种协议(例如 OWA 邮件客户端)之外的所有可用邮件协议,然后验证问题是否仍然出现。
该过程的其余部分是通过每次启用其他邮件客户端来实现的,直到我们找到无法运行或有问题的邮件客户端。
下表包含我们在当前文章中回顾的邮件协议和邮件客户端的摘要:
| Client | Protocol | Disable parameter |
|---|---|---|
| Web Base Based client | Disable OWA client access | -OWAEnabled $False |
| Mobile Based mail client | Disable ActiveSync mail client access to Exchange mailbox | -ActiveSyncEnabled $False |
| Mobile Based mail client | Disable OWA for mobile device mail client access to Exchange mailbox | -OWAforDevicesEnabled $False |
| Outlook mail client | Disable Outlook mail client access to Exchange mailbox | -MAPIEnabled $False |
| Outlook mail client | Disable Outlook mail client access to Exchange WEB services (EWS) | -EwsAllowOutlook $False |
| Exchange Web Services client | Disable mail client access to Exchange WEB services (EWS) | -EwsEnabled $False |
| “Internet” mail clients - POP3 and IMAP4 | Disable POP3 mail client access to Exchange mailbox | -PopEnabled $False |
| “Internet” mail clients - POP3 and IMAP4 | Disable IMAP4 mail client access to Exchange mailbox | -ImapEnabled $False |
| Exchange MAC client | Disable Microsoft Entourage mail client access to Exchange mailbox | -EwsAllowEntourage $False |
| Exchange MAC client | Disable Microsoft Outlook for Mac mail client access to Exchange mailbox | -EwsAllowMacOutlook $False |
| Remote PowerShell | Disable Access to Remote PowerShell | -RemotePowerShellEnabled $False |
我添加了对我们想要禁用 Exchange 客户端创建远程 PowerShell 会话的选项的场景的引用。
禁用 OWA 客户端对 Exchange 邮箱的访问
OWAEnabled 参数启用或禁用使用 Outlook 网页版访问邮箱。默认值为 $True。
为了禁用 Exchange Online 收件人访问 OWA 协议,我们将 OWAEnabled 值设置为 $False。
禁用 OWA 客户端访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -OWAEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -OWAEnabled $False禁用 OWA 客户端访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -OWAEnabled $False禁用 ActiveSync(移动客户端)客户端对 Exchange 邮箱的访问
ActiveSyncEnabled 参数启用或禁用邮箱的 Exchange ActiveSync。默认值为 $True。
为了禁用 Exchange Online 收件人访问 ActiveSync 协议,我们将 ActiveSyncEnabled 值设置为 $False。
禁用 ActiveSync(移动客户端)访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -ActiveSyncEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -ActiveSyncEnabled $False禁用 ActiveSync(移动客户端)访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -ActiveSyncEnabled $False禁用 OWA 使移动设备客户端访问 Exchange 邮箱
OWAforDevicesEnabled 参数启用或禁用使用 Outlook 网页版设备访问邮箱。默认值为 $True。
若要禁用 Exchange Online 收件人访问 Outlook 网页版设备协议,我们将 OWAforDevicesEnabled 值设置为 $False。
禁用 OWA 使移动设备客户端访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -OWAforDevicesEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -OWAforDevicesEnabled $False禁用 OWA 使移动设备客户端访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -OWAforDevicesEnabled $False禁用 Outlook 客户端(MAPI 客户端)访问 Exchange 邮箱
MAPIEnabled 参数启用或禁用使用 MAPI 客户端(例如 Microsoft Outlook)对邮箱的访问。默认值为 $True。
要禁用 Outlook(MAPI 客户端)协议,我们将 MAPIEnabled 值设置为 $False。
禁用 Outlook 客户端(MAPI 客户端)访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -MAPIEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -MAPIEnabled $False禁用 Outlook 客户端(MAPI 客户端)访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -MAPIEnabled $False禁用 Microsoft Outlook 客户端 EWS 对 Exchange 邮箱的访问
EwsAllowOutlook 参数允许或禁止使用 Exchange Web 服务的 Microsoft Outlook 客户端访问邮箱。 Outlook 使用 Exchange Web 服务进行忙/闲、外出设置和日历共享。默认值为 $True。
要禁用 Exchange Microsoft Outlook 客户端 EWS 访问,我们将 EwsAllowOutlook 值设置为 $False。
禁用 Microsoft Outlook 客户端 EWS 访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -EwsAllowOutlook $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -EwsAllowOutlook $False禁用 Microsoft Outlook 客户端 EWS 访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -EwsAllowOutlook $False禁用 Exchange Web 服务客户端对 Exchange 邮箱的访问
EwsEnabled 参数启用或禁用使用 Exchange Web 服务客户端对邮箱的访问。默认值为 $True。
要禁用 Exchange Web 服务客户端协议,我们将 EwsEnabled 值设置为 $False。
禁用 Exchange Web 服务客户端对 Exchange 邮箱的访问单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -EwsEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -EwsEnabled $False禁用 Exchange Web 服务客户端对 Exchange 邮箱的访问批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -EwsEnabled $False禁用 POP3 客户端对 Exchange 邮箱的访问
PopEnabled 参数启用或禁用使用 POP3 客户端对邮箱的访问。默认值为 $True。
要禁用 Exchange Online 收件人访问 POP3 协议,我们将 PopEnabled 值设置为 $False。
禁用 POP3 客户端访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -PopEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -PopEnabled $False禁用 POP3 客户端访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -PopEnabled $False禁用 IMAP4 客户端对 Exchange 邮箱的访问
ImapEnabled 参数启用或禁用使用 IMAP4 客户端对邮箱的访问。默认值为 $True。
要禁用 Exchange Online 收件人访问 IMAP4 协议,我们将 ImapEnabled 值设置为 $False。
禁用 IMAP4 客户端访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -ImapEnabled $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -ImapEnabled $False禁用 IMAP4 客户端访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -ImapEnabled $False禁用 Microsoft Entourage 客户端(Mac 客户端)访问 Exchange 邮箱
EwsAllowEntourage 参数启用或禁用使用 Exchange Web 服务的 Microsoft Entourage 客户端(例如,Entourage 2008 for Mac Web 服务版)对邮箱的访问。默认值为 $True。
要禁用 Exchange Online Mac 收件人访问 Entourage 协议,我们将 EwsAllowEntourage 值设置为 $False。
禁用Microsoft Entourage 客户端(Mac 客户端)客户端访问Exchange 邮箱|单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -EwsAllowEntourage $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -EwsAllowEntourage $False禁用Microsoft Entourage 客户端(Mac 客户端)客户端访问Exchange 邮箱|批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -EwsAllowEntourage $False禁用 Microsoft Outlook for Mac 客户端访问 Exchange 邮箱
EwsAllowMacOutlook 参数启用或禁用使用 Exchange Web 服务的 Microsoft Outlook for Mac 客户端(例如 Outlook for Mac 2011 或更高版本)对邮箱的访问。默认值为 $True。
要禁用 Exchange Online Mac 收件人访问 Microsoft Outlook for Mac 协议,我们将 EwsAllowMacOutlook 值设置为 $False。
禁用 Microsoft Outlook for Mac 客户端访问 Exchange 邮箱 |单一邮箱
PowerShell命令语法:
Set-CASMailbox <Mailbox> -EwsAllowMacOutlook $FalsePowerShell 命令示例:
Set-CASMailbox "Bob@o365info.com" -EwsAllowMacOutlook $False禁用 Microsoft Outlook for Mac 客户端访问 Exchange 邮箱 |批量 - 除 Exchange 管理员之外的所有具有邮箱的 Exchange 收件人
PowerShell 命令示例:
Get-user | Where-Object {($_.RecipientTypeDetails -eq 'UserMailbox') -and ($_.Title -ne 'Exchange Admin')} | Set-CASMailbox -EwsAllowMacOutlook $False禁用对远程 PowerShell 的访问
RemotePowerShellEnabled 参数启用或禁用使用远程 PowerShell 会话访问 Exchange Online。默认值为 $True。
要禁用远程 PowerShell,我们将 RemotePowerShellEnabled 值设置为 $False。
PowerShell命令语法:
Set-User <Mailbox> -RemotePowerShellEnabled $FalsePowerShell 命令示例:
Set-User "Bob@o365info.com" -RemotePowerShellEnabled $False获取邮箱访问协议信息
获取标准访问协议设置 |单一邮箱
PowerShell命令语法:
Get-CASMailbox <Mailbox>PowerShell 命令示例:
Get-CASMailbox "Bob"获取MAC客户端访问协议设置|单一邮箱
PowerShell命令语法:
Get-CASMailbox <Mailbox> | FT EwsAllowMacOutlook, EwsAllowEntouragePowerShell 命令示例:
Get-CASMailbox "Bob" | FT EwsAllowMacOutlook, EwsAllowEntourage获取远程 PowerShell 访问设置 |单一邮箱
PowerShell命令语法:
Get-User <USER> | FT RemotePowerShellEnabledPowerShell 命令示例:
Get-User "Bob" | FT RemotePowerShellEnabled获取标准访问协议设置 |所有 Exchange 用户邮箱
PowerShell 命令示例:
Get-MailBox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Get-CASMailbox获取标准访问协议设置 |所有 Exchange 用户邮箱
PowerShell 命令示例:
Get-MailBox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Get-CASMailbox获取禁用 OWA 访问权限的 Exchange 收件人
PowerShell 命令示例:
Get-MailBox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Where-Object {(Get-CASMailbox -Identity $_.alias).OWAEnabled -eq $False }获取禁用 ActiveSync 访问的 Exchange 收件人
PowerShell 命令示例:
Get-MailBox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Where-Object {(Get-CASMailbox -Identity $_.alias).ActiveSyncEnabled -eq $False }获取禁用 Outlook (MAPI) 访问的 Exchange 收件人
PowerShell 命令示例:
Get-MailBox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Where-Object {(Get-CASMailbox -Identity $_.alias).MAPIEnabled -eq $False }