Exchange Online 中用戶端存取規則的程序
摘要:了解如何在 Exchange Online 中檢視、建立、修改、刪除及測試用戶端存取規則。
用戶端存取規則會根據連線的內容,允許或封鎖用戶端對 Exchange Online 組織的連線。 如需用戶端存取規則的詳細資訊,請參閱 Exchange Online 中的用戶端存取規則。
注意事項
從 2022 年 10 月開始,我們已針對所有未使用這些規則的現有Exchange Online組織,停用用戶端存取規則的存取權。 在 2023 年 10 月,所有Exchange Online組織的用戶端存取規則支援都將終止。 如需詳細資訊,請參閱在Exchange Online 中取代用戶端存取規則。
請確認您的規則是以您預期的方式運作。 務必徹底地測試每個規則以及規則之間的互動。 如需詳細資訊,請參閱本主題稍後的使用 Exchange Online PowerShell 測試用戶端存取規則一節。
開始之前有哪些須知?
每項程序的預估完成時間:不到 5 分鐘。
本主題中的程序僅適用於 Exchange Online PowerShell。 若要了解如何使用 Windows PowerShell 連線到 Exchange Online,請參閱連線到 Exchange Online Protection PowerShell。
用戶端存取規則支援 IPv4 和 IPv6 位址。 有關 IPv6 位址和語法的詳細資訊,請參閱此 Exchange 2013 主題:IPv6 位址基礎。
您必須已獲指派權限,才能執行此程序或這些程序。 若要查看您需要的權限,請參閱 Exchange Online 中的功能權限中的「郵件流程」項目。
如需適用於此主題中程序的快速鍵相關資訊,請參閱 Exchange 系統管理中心的鍵盤快速鍵。
提示
有問題嗎? 在 Exchange 論壇中尋求協助。 請造訪論壇:Exchange Online 或 Exchange Online Protection。
使用 Exchange Online PowerShell 來檢視用戶端存取規則
若要傳回所有用戶端存取規則的摘要清單,請執行下列命令:
Get-ClientAccessRule
若要傳回特定規則的詳細資訊,請使用下列語法:
Get-ClientAccessRule -Identity "<RuleName>" | Format-List [<Specific properties to view>]
此範例會傳回規則 (名稱為「封鎖來自 192.168.1.0/24 的用戶端連線」) 的所有內容值。
Get-ClientAccessRule -Identity "Block Client Connections from 192.168.1.0/24" | Format-List
此範例只會傳回相同規則的指定屬性。
Get-ClientAccessRule -Identity "Block Client Connections from 192.168.1.0/24" | Format-List Name,Priority,Enabled,Scope,Action
如需詳細的語法及參數資訊,請參閱 Get-ClientAccessRule。
使用 Exchange Online PowerShell 來建立用戶端存取規則
若要在 Exchange Online PowerShell 中建立用戶端存取規則,請使用下列語法:
New-ClientAccessRule -Name "<RuleName>" [-Priority <PriorityValue>] [-Enabled <$true | $false>] -Action <AllowAccess | DenyAccess> [<Conditions>] [<Exceptions>]
此範例會建立名為「封鎖 ActiveSync」的新用戶端存取規則,其會封鎖 Exchange ActiveSync 用戶端的存取,但 IP 位址範圍 192.168.10.1/24 中的用戶端除外。
New-ClientAccessRule -Name "Block ActiveSync" -Action DenyAccess -AnyOfProtocols ExchangeActiveSync -ExceptAnyOfClientIPAddressesOrRanges 192.168.10.1/24
附註:
- 最佳做法是建立優先順序最高的用戶端存取規則,以保留對遠端 PowerShell 的管理員存取權。 例如:
New-ClientAccessRule -Name "Always Allow Remote PowerShell" -Action Allow -AnyOfProtocols RemotePowerShell -Priority 1
。 - 規則具有優先順序預設值,因為我們並未使用 Priority 參數。 如需詳細資訊,請參閱本主題稍後的使用 Exchange Online PowerShell 設定用戶端存取規則的優先順序一節。
- 規則已啟用,因為我們並未使用 Enabled 參數,且預設值為
$true
。
此範例會建立名為限制 EAC 存取的新用戶端存取規則,以封鎖傳統 Exchange 系統管理中心的存取,除非用戶端來自 192.168.10.1/24 範圍內的 IP 位址,或使用者帳戶名稱包含 「tanyas」。
New-ClientAccessRule -Name "Restrict EAC Access" -Action DenyAccess -AnyOfProtocols ExchangeAdminCenter -ExceptAnyOfClientIPAddressesOrRanges 192.168.10.1/24 -ExceptUsernameMatchesAnyOfPatterns *tanyas*
如需詳細的語法和參數資訊,請參閱 New-ClientAccessRule。
如何知道這是否正常運作?
若要確認您已順利建立用戶端存取規則,請使用以下任何程序:
在 Exchange Online PowerShell 中執行下列命令,以查看規則清單中的新規則:
Get-ClientAccessRule
以規則名稱取代 <RuleName>,然後執行下列命令以查看規則的詳細資料:
Get-ClientAccessRule -Identity "<RuleName>" | Format-List
使用 Test-ClientAccessRule Cmdlet,查看哪些用戶端存取規則會影響對 Exchange Online 的特定連線。 如需詳細資訊,請參閱本主題稍後的使用 Exchange Online PowerShell 測試用戶端存取規則一節。
使用 Exchange Online PowerShell 來修改用戶端存取規則
當您修改用戶端存取規則時,無法使用任何其他設定。 這些設定與您在建立規則時可用的設定相同。
若要在 Exchange Online PowerShell 中修改用戶端存取規則,請使用下列語法:
Set-ClientAccessRule -Identity "<RuleName>" [-Name "<NewName>"] [-Priority <PriorityValue>] [-Enabled <$true | $false>] -Action <AllowAccess | DenyAccess> [<Conditions>] [<Exceptions>]
此範例會停用名為 Allow IMAP4 的現有用戶端存取規則。
Set-ClientAccessRule -Identity "Allow IMAP4" -Enabled $false
當您修改用戶端存取規則時的重要考量,就是修改可接受多個值的條件或例外狀況:
- 您所指定的值會「取代」任何現有的值。
- 若要新增或移除值,而不影響其他現有的值,請使用下列語法:
@{Add="<Value1>","<Value2>"...; Remove="<Value1>","<Value2>"...}
此範例會將 IP 位址範圍 172.17.17.27/16 新增至名為 Allow IMAP4 的現有用戶端存取規則,而不影響現有的 IP 位址值。
Set-ClientAccessRule -Identity "Allow IMAP4" -AnyOfClientIPAddressesOrRanges @{Add="172.17.17.27/16"}
如需詳細的語法及參數資訊,請參閱 Set-ClientAccessRule。
如何知道這是否正常運作?
若要確認您已順利修改用戶端存取規則,請使用以下任何程序:
以規則名稱取代 <RuleName>,然後執行下列命令以查看規則的詳細資料:
Get-ClientAccessRule -Identity "<RuleName>" | Format-List
使用 Test-ClientAccessRule Cmdlet,查看哪些用戶端存取規則會影響對 Exchange Online 的特定連線。 如需詳細資訊,請參閱本主題稍後的使用 Exchange Online PowerShell 測試用戶端存取規則一節。
使用 Exchange Online PowerShell 設定用戶端存取規則的優先順序
根據預設,系統會根據用戶端存取原則的建立順序為其提供優先順序 (較新原則的優先順序比較舊原則的優先順序低)。 較低的優先順序數字表示規則的優先順序較高,而規則會按照優先順序進行處理 (較高優先順序的規則會在較低優先順序的規則前面進行處理)。 兩個規則不會有相同的優先順序。
您可以對規則設定的最高優先順序為 1。 您可以設定的最低值則取決於規則的數目。 例如,如果您有五個規則,則您可以使用 1 到 5 的優先順序值。 變更現有規則的優先順序會對其他規則造成階層式影響。 例如,如果您有五個規則 (優先順序 1 到 5),而您將規則的優先順序從 5 變更為 2,則優先順序為 2 的現有規則會變更為優先順序 3,優先順序 3 的規則會變更為優先順序 4,而優先順序 4 的規則會變更為優先順序 5。
若要在 Exchange Online PowerShell 中設定用戶端存取規則的優先順序,請使用下列語法:
Set-ClientAccessRule -Identity "<RuleName>" -Priority <Number>
此範例會將規則 (名為 Disable IMAP4) 的優先順序設定為 2。 優先順序小於或等於 2 的所有現有規則會減 1 (它們的優先順序數字會加 1)。
Set-ClientAccessRule -Identity "Disable IMAP" -Priority 2
附註:若要在建立新規則時設定其優先順序,請在 New-ClientAccessRule Cmdlet 上使用 Priority 參數。
如何知道這是否正常運作?
若要確認您已順利設定用戶端存取規則的優先順序,請使用以下任一程序:
在 Exchange Online PowerShell 中執行下列命令,以查看規則清單及其 [優先順序] 值:
Get-ClientAccessRule
以規則名稱取代 <RuleName>,然後執行下列命令:
Get-ClientAccessRule -Identity "<RuleName>" | Format-List Name,Priority
使用 Exchange Online PowerShell 來移除用戶端存取規則
若要在 Exchange Online PowerShell 中移除用戶端存取規則,請使用下列語法:
Remove-ClientAccessRule -Identity "<RuleName>"
此範例會移除名為 Block POP3 的用戶端存取規則。
Remove-ClientAccessRule -Identity "Block POP3"
注意:若要停用用戶端存取規則 (但不刪除它),請在 Set-ClientAccessRule Cmdlet 上使用值為 $false
的 Enabled 參數。
如需詳細的語法及參數資訊,請參閱 Remove-ClientAccessRule。
如何知道這是否正常運作?
若要確認您已成功移除用戶端存取規則,請在 Exchange Online PowerShell 中執行下列命令以確認此規則不再列出:
Get-ClientAccessRule
使用 Exchange Online PowerShell 來測試用戶端存取規則
若要查看哪些用戶端存取規則會影響對 Exchange Online 的特定用戶端連線,請使用下列語法:
Test-ClientAccessRule -User <MailboxIdentity> -AuthenticationType <AuthenticationType> -Protocol <Protocol> -RemoteAddress <ClientIPAddress> -RemotePort <TCPPortNumber>
此範例傳回的用戶端存取規則會符合具有下列內容的 Exchange Online 用戶端連線:
- 驗證類型:基本
- 通訊協定:
OutlookWebApp
- 遠端位址:172.17.17.26
- 遠端連接埠:443
- 使用者: julia@contoso.com
Test-ClientAccessRule -User julia@contoso.com -AuthenticationType BasicAuthentication -Protocol OutlookWebApp -RemoteAddress 172.17.17.26 -RemotePort 443
如需詳細的語法及參數資訊,請參閱 Test-ClientAccessRule。