Инструкции по изменению условий и исключений правил транспорта в среде управления Exchange
Применимо к: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007
Последнее изменение раздела: 2007-03-20
В этом разделе описано использование среды управления Exchange для изменения условий и исключений в существующем правиле транспорта, настроенном на компьютере с установленной ролью транспортного сервера-концентратора или пограничного транспортного сервера Microsoft Exchange Server 2007.
Дополнительные сведения об агентах правил транспорта см. в разделе Обзор правил транспорта.
Предварительная подготовка
Прежде чем выполнять следующие процедуры, прочитайте раздел Инструкции по изменению правила транспорта, который содержит важную информацию, необходимую для изменения условий и исключений правил транспорта.
Для выполнения описанных ниже действий используемой учетной записи необходимо делегировать следующую роль:
- роль администратора организации Exchange.
Для выполнения следующей процедуры на компьютере с установленной ролью сервера «Граничный транспорт» необходимо осуществить вход с помощью учетной записи, входящей в локальную группу «Администраторы».
Дополнительные сведения о разрешениях, делегировании ролей и правах, необходимых для администрирования Exchange Server 2007, см. в разделе Вопросы, связанные с разрешениями.
Для выполнения этих процедур необходимо ориентироваться в следующих понятиях:
Дополнительные сведения о среде управления Exchange см. в разделе Использование среды управления Exchange.
Изменение условий или исключений в правиле транспорта
Процедуры, используемые для изменения условий и исключений в правилах транспорта, очень подобны, поскольку в условиях и исключениях используются одни и те же базовые предикаты правил транспорта. Хотя в процедурах, описанных в этом разделе, в качестве примера используются условия правил транспорта, эти процедуры можно также применять и к исключениям правил транспорта. Чтобы вместо условий изменить исключения правила транспорта, замените Conditions
на Exceptions
. Рассмотрим следующий пример:
Чтобы обратиться к условиям в правиле транспорта, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы обратиться к исключениям в правиле транспорта, выполните следующую команду:
$ExceptionArray = (Get-TransportRule "Test Rule").Exceptions
Добавление условий к правилу транспорта
Во-первых, необходимо сохранить существующие условия. Привяжите каждое существующее условие в массиве условий к его собственной переменной. Для привязки массива условий к переменной используйте следующий синтаксис команды:
$ConditionArray = (Get-TransportRule "<rule name>").Conditions
Привязка условий правила транспорта к переменной и просмотр количества условий в массиве
Чтобы привязать массив условий к переменной, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы просмотреть число условий в массиве, выполните следующую команду:
$ConditionArray.Length
Затем привяжите каждое условие в массиве к его собственной переменной. Условия хранятся в элементах массива, пронумерованных от 0
до $Condition.Length - 1
. Для привязки каждого элемента массива условий к его собственной переменной используйте следующий синтаксис команды:
$ExistingCondition<Array Element Number> = $ConditionArray[<Array Element Number>]
Чтобы привязать каждый элемент массива условий к его собственной переменной
Выполните следующие команды:
$ExistingCondition0 = $ConditionArray[0] $ExistingCondition1 = $ConditionArray[1]
Затем создайте новое условие или условия. Условия, которые уже применены к существующему правилу транспорта, использовать нельзя. Для привязки нового условия к переменной используйте следующий синтаксис команды:
$NewCondition = Get-TransportRulePredicate <Predicate Name>
Список предикатов правил транспорта см. в разделе Предикаты правил транспорта.
Чтобы привязать новое условие к новой переменной
Выполните следующую команду:
$NewCondition = Get-TransportRulePredicate SubjectContains
После привязки нового условия к новой переменной следует задать значения условию. Чтобы присвоить значения новому условию, выполните следующую команду:
$NewCondition.<PredicateProperty> = <Single Value or Array of Values>
Список свойств предикатов правил транспорта и ожидаемое форматирование их значений см. в разделе Предикаты правил транспорта.
Чтобы присвоить значения новому условию
Выполните следующую команду:
$NewCondition.Words = @("Test Subject 1", "Test Subject 2")
Создав все необходимые новые условия, примените все условия к существующему правилу транспорта. Для изменения правила транспорта используйте следующий синтаксис команды:
Set-TransportRule <Transport Rule Name> -Condition @(<Conditions>)
Примечание. |
---|
При указании существующих и новых условий в команде Set-TransportRule их необходимо упорядочить согласно их Rank . Чтобы просмотреть ранг каждого условия или исключения, выполните команду Get-TransportRulePredicate. |
Чтобы изменить существующее правило транспорта
Выполните следующую команду:
Set-TransportRule "Test Rule" -Condition @($ExistingCondition0, $ExistingCondition1, $NewCondition)
Удаление условий из правила транспорта
Чтобы удалить условие из правила транспорта, проделайте следующие шаги из перечисленных в этом разделе ранее:
Привязка условий правила транспорта к переменной и просмотр количества условий в массиве
Привязка каждого элемента массива условий к его собственной переменной, кроме условия, которое требуется удалить.
Изменение существующего правила транспорта
Удаление условия из правила транспорта
Чтобы привязать массив условий к переменной, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы просмотреть число условий в массиве, выполните следующую команду:
$ConditionArray.Length
Чтобы просмотреть условия в переменной
$ConditionArray
и выбрать из массива условий номер элемента, который требуется удалить, выполните следующую команду:$ConditionArray
Чтобы привязать к переменным условия, которые нужно сохранить, пропуская элементы массива условий, которые не нужно сохранять, выполните следующую команду:
$ExistingCondition1 = $Condition[1] ...
Чтобы изменить правило транспорта, привязывая только переменные, связанные с условиями, которые требуется сохранить, выполните следующую команду:
Set-TransportRule "Test Rule" -Condition @($ExistingCondition1)
Изменение значений существующего условия в правиле транспорта
Процедуры изменения условия зависят от того, принимает условие одно или несколько значений. Следуйте процедурой, применимой к типу условия, которое требуется изменить.
Чтобы определить тип условия, которое требуется изменить, см. раздел Предикаты правил транспорта.
Изменение существующего условия с одним значением
Сначала привяжите условия существующего правила транспорта к переменной и просмотрите массив. Используйте следующий синтаксис команды:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Привязка условий правила транспорта к переменной и просмотр количества условий в массиве
Чтобы привязать массив условий к переменной, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы просмотреть условия в массиве, выполните следующую команду:
$ConditionArray
Определите, какое условие требуется изменить, и узнайте номер его элемента в массиве. Чтобы правильно определить номер элемента массива, см. далее «Добавление значений к существующему условию с несколькими значениями».
После определения номера элемента массива присвойте новое значение этому условию с помощью следующего синтаксиса команды:
$ConditionArray[<array element number>].<Predicate Property> = <Single Value>
Чтобы присвоить значение условию WithImportance, соответствующему элементу массива номер 2
Выполните следующую команду:
$ConditionArray[2].Importance = "High"
Чтобы изменить существующее правило транспорта
Выполните следующую команду:
Set-TransportRule "Test Rule" -Condition $ConditionArray
Примечание. |
---|
Вставлять переменную $ConditionArray в массив не требуется, поскольку переменная $ConditionArray уже является массивом. |
Добавление значений к существующему условию с несколькими значениями
Сначала нужно привязать условия существующего правила транспорта к переменной и просмотреть массив. Используйте следующий синтаксис команды:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Привязка условий правила транспорта к переменной и просмотр количества условий в массиве
Чтобы привязать массив условий к переменной, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы просмотреть условия в массиве, выполните следующую команду:
$ConditionArray
Определите, какое условие требуется изменить, и узнайте номер его элемента в массиве. Первому условию в массиве соответствует элемент массива 0
. Если условие, которое требуется изменить, — третье в списке, номер его элемента массива — 2
. Затем нужно определить свойство предиката или свойства условия. Свойства предиката условия всегда перечисляются непосредственно перед строкой, начинающейся с LinkedDisplayTextException
, как в следующем примере:
Addresses : {Kim Akers}
LinkedDisplayTextException : except if from <a id="Addresses">people</a>
Name : From
Rank : 0
LinkedDisplayText : from <a id="Addresses">people</a>
Words : {Corporate Communication, Message from VP, Sales Quotas}
LinkedDisplayTextException : except if with <a id="Words">specific words</a> in the subject
Name : SubjectContains
Rank : 15
LinkedDisplayText : with <a id="Words">specific words</a> in the subject
В этом примере первое условие, элемент массива 0
, имеет свойство предиката Addresses
. Второе условие, элемент массива 1
, имеет свойство предиката Words
.
Чтобы добавить новые значения к существующему условию, используйте следующий синтаксис команды:
$ConditionArray[<Array Element Number>].<Predicate Property> += <Array of Values>
Список свойств предикатов правил транспорта и ожидаемое форматирование их значений см. в разделе Предикаты правил транспорта.
Чтобы добавить значения к существующему условию, соответствующему элементу массива 1 из примера
Выполните следующую команду:
$ConditionArray[1].Words += @("Industry Projections", "Sales Forecast")
Чтобы изменить существующее правило транспорта
Выполните следующую команду:
Set-TransportRule "Test Rule" -Condition $ConditionArray
Примечание. |
---|
Вставлять переменную $ConditionArray в массив не требуется, поскольку переменная $ConditionArray уже является массивом. |
Удаление значений из существующего условия с несколькими значениями
Чтобы удалить значения из существующего условия, необходимо просмотреть существующие значения и затем повторно ввести существующие значения в условие, опуская значения, которые больше не нужны. При выполнении следующей процедуры существующие значения заменяются указываемыми значениями.
Примечание. |
---|
Следующая процедура хорошо работает только для условий, которые имеют небольшое количество настроенных значений. Для условий, имеющих десятки или сотни настроенных значений, эта процедура не подходит. В случаях, когда изменять значения условия вручную нерационально, рекомендуется использовать цикл foreach .Дополнительные сведения см. в разделе Использование среды управления Exchange. |
Сначала нужно привязать условия существующего правила транспорта к переменной и просмотреть массив. Используйте следующий синтаксис команды:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Привязка условий правила транспорта к переменной и просмотр количества условий в массиве
Чтобы привязать массив условий к переменной, выполните следующую команду:
$ConditionArray = (Get-TransportRule "Test Rule").Conditions
Чтобы просмотреть условия в массиве, выполните следующую команду:
$ConditionArray
Затем просмотрите значения условия, которые требуется изменить, и замените значения этого условия значениями, которые нужно сохранить. Дополнительные сведения о том, как определить номер элемента и свойства предиката массива условий, см. выше в разделе «Добавление значения к существующему условию с несколькими значениями». Используйте следующий синтаксис команды:
$ConditionArray[<Array Element Number>]
Затем замените существующие значения условия, которые требуется изменить, значениями, которые нужно сохранить. Используйте следующий синтаксис команды:
$ConditionArray[<Array Element Number>].<Predicate Property> = <Array of Values>
Список свойств предикатов правил транспорта и ожидаемое форматирование их значений см. в разделе Предикаты правил транспорта.
Чтобы удалить значения из существующего условия, соответствующего элементу массива 1 из приведенного ранее примера
Чтобы просмотреть текущие значения, настроенные для условия, выполните следующую команду:
$ConditionArray[1]
Чтобы заменить текущие значения требуемыми значениями, выполните следующую команду:
$ConditionArray[1].Words = @("Corporate Communication", "Sales Quotas")
Чтобы изменить существующее правило транспорта
Выполните следующую команду:
Set-TransportRule "Test Rule" -Condition $ConditionArray
Примечание. |
---|
Нет необходимости вставлять переменную $ConditionArray в массив, так как переменная $ConditionArray сама является массивом. |
Дополнительные сведения
Подробную информацию о синтаксисе и параметрах каждой команды см. в следующих разделах:
Дополнительные сведения о правилах транспорта см. в следующих разделах: