Процедуры для правил клиентского доступа в Exchange Online

Сводка. Узнайте, как создавать, просматривать, менять, удалять и тестировать правила клиентского доступа в Exchange Online.

Правила клиентского доступа разрешают или блокируют клиентские подключения к Exchange Online организации на основе свойств подключения. Дополнительные сведения о правилах клиентского доступа см. в разделе Правила доступа клиентов в Exchange Online.

Примечание.

Начиная с октября 2022 г. мы отключили доступ к правилам доступа клиентов для всех существующих Exchange Online организаций, которые не использовали их. В октябре 2023 г. поддержка правил клиентского доступа будет завершена для всех Exchange Online организаций. Дополнительные сведения см. в статье Отмена правил доступа клиентов в Exchange Online.

Убедитесь, что правила работают надлежащим образом. Тщательно тестируйте все правила и взаимодействие между ними. Дополнительные сведения см. в разделе Тестирование правил клиентского доступа в Exchange Online PowerShell этой статьи.

Что нужно знать перед началом работы?

  • Предполагаемое время выполнения каждой процедуры: менее 5 минут.

  • Процедуры, описанные в этом разделе, доступны только в Exchange Online PowerShell. Сведения о том, как с помощью Windows PowerShell подключаться к Exchange Online, см. в статье Подключение к Exchange Online 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>]

В этом примере возвращаются значения всех свойств правила "Block Client Connections from 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>]

В этом примере создается новое правило клиентского доступа с именем Block 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.

В этом примере создается новое правило клиентского доступа с именем Restrict EAC Access, которое блокирует доступ к классическому центру администрирования Exchange, за исключением случаев, когда клиент поступает с IP-адреса в диапазоне 192.168.10.1/24 или если имя учетной записи пользователя содержит "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
    
  • Узнайте, какие правила доступа клиента повлияют на определенное клиентское подключение к Exchange Online с помощью командлета Test-ClientAccessRule. Дополнительные сведения см. в разделе Тестирование правил клиентского доступа в 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>"...}

В этом примере к существующему правилу клиентского доступа под названием Allow IMAP4 добавляется диапазон IP-адресов 172.17.17.27/16. При этом существующие IP-адреса остаются без изменений.

Set-ClientAccessRule -Identity "Allow IMAP4" -AnyOfClientIPAddressesOrRanges @{Add="172.17.17.27/16"}

Подробные сведения о синтаксисе и параметрах см. в статье Set-ClientAccessRule.

Как проверить, все ли получилось?

Чтобы убедиться, что правило клиентского доступа успешно изменено, выполните одно из указанных ниже действий.

  • Замените <RuleName> именем правила и выполните следующую команду, чтобы просмотреть сведения о правиле:

    Get-ClientAccessRule -Identity "<RuleName>" | Format-List
    
  • Узнайте, какие правила доступа клиента повлияют на определенное клиентское подключение к Exchange Online с помощью командлета Test-ClientAccessRule. Дополнительные сведения см. в разделе Тестирование правил клиентского доступа в Exchange Online PowerShell этой статьи.

Установка приоритета правил клиентского доступа в Exchange Online PowerShell

По умолчанию правилам клиентского доступа присваивается приоритет, основанный на порядке их создания (новые правила имеют более низкий приоритет, чем старые). Более низкий приоритет указывает на более высокий приоритет правила, а правила обрабатываются в порядке приоритета (правила с более высоким приоритетом обрабатываются перед правилами с более низким приоритетом). Два правила не могут иметь одинаковый приоритет.

Максимальный приоритет, который можно задать для правила, — 1. Минимальное значение зависит от количества правил. Например, если у вас есть пять правил, вы можете использовать значения 1-5. Изменение приоритета существующего правила оказывает каскадное влияние на другие правила. Например, если вы замените приоритет правила 5 приоритетом 2, когда у вас есть пять правил (с приоритетами от 1 до 5), то для существующего правила с приоритетом 2 будет задан приоритет 3, для правила с приоритетом 3 — приоритет 4, а для правила с приоритетом 4 — приоритет 5.

Чтобы задать приоритет правила в Exchange Online PowerShell, используйте следующий синтаксис:

Set-ClientAccessRule -Identity "<RuleName>" -Priority <Number>

В этом примере для правила "Disable IMAP4" задается приоритет 2. Все правила с приоритетом не больше 2 понижаются на один ранг (значения приоритета увеличиваются на 1).

Set-ClientAccessRule -Identity "Disable IMAP" -Priority 2

Примечание. Чтобы задать приоритет нового правила при его создании, используйте параметр Priority командлета New-ClientAccessRule.

Как проверить, все ли получилось?

Чтобы убедиться, что приоритет правила клиентского доступа успешно задан, выполните одно из указанных ниже действий.

  • Выполните следующую команду в Exchange Online PowerShell, чтобы просмотреть список правил и соответствующих значений Priority:

    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"

Примечание. Чтобы отключить правило клиентского доступа, не удаляя его, используйте параметр Enabled со значением $false в командлете Set-ClientAccessRule .

Подробные сведения о синтаксисе и параметрах см. в статье 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.