Показаны сообщения с ярлыком exchange 2010. Показать все сообщения
Показаны сообщения с ярлыком exchange 2010. Показать все сообщения

пятница, 5 октября 2012 г.

Удаление сообщений из ящиков PowerShell


Время от времени администратор Exchange сталкивается с ситуацией, когда сообщения соответствующие определенным критериям должны быть удалены из большого числа почтовых ящиков или транспортных очередей сервера Exchange. Такая необходимость может возникнуть из-за какой-либо массовой рассылки, когда сообщение отправлено случайно в большую группу рассылки или большому числу отдельных получателей или когда нужно предпринять усилия по очистке от последствий распространения вируса массовой почтовой рассылки (хотя они встречаются все реже и являются предметом заботы антивирусных сканеров серверов Exchange).
Соответствующие шаги описаны в различных местах документации Exchange, но может быть достаточно трудно, чтобы обратиться к нескольким источникам, если вы имеете смешанную среду содержащую несколько версий Exchange сервера. Мы хотели бы собрать в одном месте в некоторой степени обобщенные инструкции о том, как выполнить эти задачи во всех ныне поддерживаемых версиях Exchange Server - Exchange 2010, Exchange 2007.

Удаление сообщений из почтовых ящиков

Удаление сообщений из командной строки в Exchange 2010 RTM и Exchange 2007

В Exchange 2010 RTM и в Exchange 2007 вы можете использовать командлет Export-Mailbox для того, чтобы экспортировать или удалять сообщения. В Exchange 2010 SP1 действия по экспорту почтового ящика выполняются командлетом New-MailboxExportRequest и рассматриваются в отдельной статье. Действия по поиску и удалению сообщений выполняются командлетом Search-Mailbox.

Разрешения

В Exchange 2010 учетной записи должна быть назначена роль экспорта и импорта почтового ящика для того, чтобы выполнять операцию, используя Export-Mailbox в  Exchange 2010 RTM или Search-Mailbox в Exchange 2010 SP1. Если эта роль не назначена, то вы не сможете выполнять или «видеть» этот командлет.
Многофункциональный командлет Export-Mailbox может экспортировать содержимое почтового ящика на основе имен папок, диапазонов даты и времени, имен вложенных файлов и многих других фильтров. Сужение поиска предотвращает случайное удаление полезной почты. Для дополнительной информации, описания синтаксиса и параметров, смотрите следующие ссылки:
Учетная запись, используемая для экспорта информации, должна быть учетной записью Exchange Server Administrator, членом локальной группы Administrators целевого сервера и иметь полные права (Full Access) на исходный и целевой почтовые ящики. Целевой почтовый ящик должен быть заранее создан, как и целевая папка, которую вы указываете, тоже должна быть создана до выполнения команды.

Добавление и удаление необходимых разрешений

Следующий пример показывает, как извлечь все почтовые ящики организации Exchange и назначить полные права учетной записи MyAdmin. Вы должны выполнить эту операцию перед экспортом или удалением сообщений из почтовых ящиков пользователей. Отметим, что если вам необходимо экспортировать или удалить сообщения только из нескольких почтовых ящиков, то вы можете использовать командлет Get-Mailbox с соответствующими фильтрами или перечислить все исходные почтовые ящики.
Get-Mailbox -ResultSize unlimited | Add-MailboxPermission -User MyAdmin -AccessRights FullAccess -InheritanceType all
После экспорта или удаления сообщений из почтовых ящиков вы можете удалить полные права, как показано в следующем примере:
Get-Mailbox -ResultSize unlimited | Remove-MailboxPermission -User MyAdmin -AccessRights FullAccess -InheritanceType all

Удаление сообщений

Вот несколько примеров удаления сообщений.
В следующем примере удаляются все сообщения из папки Inbox почтовых ящиков на сервере Server1, которые содержат ключевые слова «Friday Party» и получены между 7-м и 9-м сентября. Эти сообщения будут удаляться из почтовых ящиков и копироваться в папку DeleteMsgs почтового ящика  MyBackupMailbox. После этого администратор может просмотреть сообщения в почтовом ящике MyBackupMailbox и удалить их. Формат параметров StartDate и EndDate должен соответствовать формату даты установленной на сервере: это или mm-dd-yyyy или dd-mm-yyyy.
Get-Mailbox -Server Server1 -ResultSize Unlimited | Export-Mailbox -SubjectKeywords "Friday Party" -IncludeFolders "\Inbox" -StartDate "09/07/2010" -EndDate "09/09/2010" -DeleteContent -TargetMailbox MyBackupMailbox -TargetFolder DeleteMsgs -Confirm:$false
В этом примере из всех почтовых ящиков удаляются все сообщения содержащие ключевые слова «Friday Party» в теле или заголовке.
 В зависимости от размеров вашей среды лучше выполнять извлечение/удаление в пакетном режиме, либо используя командлет Get-Mailbox с параметрами Server или Database (Get-Mailbox -Server servername -ResultSize Unlimited или Get-Mailbox -Database DB_Name -ResultSize Unlimited), либо указывая фильтр в параметре Filter. Вы можете также использовать командлет Get-DistributionGroupMember, чтобы выполнить эту операцию над членами группы рассылки.
Get-Mailbox -ResultSize Unlimited | Export-Mailbox -ContentKeywords "Friday Party" -TargetMailbox MyBackupMailbox -TargetFolder 'Friday Party' -DeleteContent
Рекомендуется всегда использовать целевой почтовый ящик (указывая параметры TargetMailbox и TargetFolder), чтобы иметь копию удаляемых сообщений. Вы можете просмотреть сообщения перед окончательным их удалением, так что любые нормальные сообщения, попавшие под действие фильтра, могут быть импортированы обратно в исходный почтовый ящик владельца. Однако можно просто удалить все сообщения без вспомогательного копирования их в другой почтовый ящик.
В этом примере из всех почтовых ящиков удаляются все сообщения, содержащие ключевые слова «Friday Party» в теле или заголовке, без копирования их в целевой почтовый ящик:
Get-Mailbox | Export-Mailbox -ContentKeywords "Friday Party" -DeleteContent

Удаление сообщений из почтовых очередей Exchange 2010 RTM и Exchange 2007

Удаление сообщения из очереди  это процесс из двух шагов.  Первая вещь, которую надо сделать  это приостановить (suspend) само сообщение. Как только сообщение приостановлено, вы можете продолжить и удалить его из очереди. Следующие команды приостанавливают  и удаляют сообщение на основе его заголовка.

Exchange 2007 SP1 и SP2

Следующая команда приостанавливает сообщения со строкой «Friday Party» в транспортных очередях на всех транспортных серверах организации:
Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | where{$_.Subject -eq "Friday Party" -and $_.Queue -notlike "*\Submission*"} | Suspend-Message
На серверах Exchange 2007 RTM, SP1 и SP2 вы не можете приостановить и удалить сообщения в очередиSubmission. Так что эта команда не будет воздействовать на сообщения в этой очереди.
Следующая команда удаляет все приостановленные сообщения, исключая очередь Submission:
Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | where{$_.status -eq "suspended" -and $_.Queue -notlike "*\Submission*"} | Remove-Message -WithNDR $False

Exchange 2010 и Exchange 2007 SP3

Следующая команда приостанавливает сообщения со строкой «Friday Party» в заголовке во всех  транспортных очередях на всех транспортных серверах организации:
Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | where {$_.Subject -eq "Friday Party"} | Suspend-Message
Следующая команда удаляет все приостановленные предыдущей командой сообщения:
Get-TransportServer | Get-Queue | Get-Message -ResultSize unlimited | Where {$_.Subject -eq "Friday Party"} | Remove-Message -WithNDR $False
Отметим, что вы можете выполнять эти команды на конкретном транспортном сервере, указав его имя после Get-TransportServer.

Приостановка и удаление сообщений в заданной транспортной очереди

Вы можете приостановить и удалить сообщения из конкретной очереди. Чтобы получить список очередей на транспортном сервере, используйте командлет Get-Queue.
Следующая команда приостанавливает сообщения со строкой «Friday Party» в заголовке из заданной очереди:
Get-Message -Queue "server\queue" -ResultSize unlimited | where{$_.Subject -eq "Friday Party"} | Suspend-Message
Следующая команда удаляет все приостановленные предыдущей командой сообщения из заданной очереди:
Get-Message -Queue "server\queue" -ResultSize unlimited | where{$_.Subject -eq "Friday Party" } | Remove-Message -WithNDR $False

Предотвращение доставки сообщений с помощью транспортных правил

В Exchange 2010 и Exchange 2007 вы можете использовать транспортные правила для того, чтобы проверять сообщения в транспортном потоке и выполнять необходимые действия, подобные удалению сообщений, на основе заданных критериях. Для дополнительной информации смотрите Общие сведения о правилах транспорта.
В Exchange 2010 и Exchange 2007 вы можете использовать визард создания нового транспортного правила (New Transport Rule) в оснастке EMC, чтобы легко создавать транспортные правила. Следующие примеры иллюстрируют, как добиться того же самого через командную строку. Отметим различия синтаксиса между версиями. (В Exchange 2010 командлеты транспортных правил упрощены, позволяя вам создавать и модифицировать транспортные правила в одну строку).

Создание транспортного правила для удаления сообщения в Exchange 2010

В следующем примере создается транспортное правило для удаления сообщения со строкой «Friday Party» в заголовке:
New-TransportRule -Name "purge Friday Party messages" -Priority '0' -Enabled $true -SubjectContainsWords 'Friday Party' -DeleteMessage $true

вторник, 17 января 2012 г.

Задействование нового сертификата для CAS и HT



Сервера Exchange активно используют в своей работе цифровые сертификаты. Сертификаты используются для различных служб в Exchange: службы IISPOP/IMAPSMTP.
При установке Exchange 2010 автоматически настраивается самозаверяющий сертификат. Самозаверяющий сертификат позволяет некоторым клиентским протоколам использовать при передаче данных протокол SSL.
Созданный при установке самозаверяющий сертификат содержит лишь имя сервера, на котором выполняется установка Exchange, поэтому для удобства использования различными службами и установки сертификата на другие сервера Exchange, необходимо сгенерировать другой сертификат.
Для удобства использования и упрощения администрирования необходимо сгенерировать один сертификат включающий  множество имен серверов, который будет использован для всех служб развернутых серверов Exchange.
Запрос должен быть следующий:
New-ExchangeCertificate -privatekeyExportable:$true -SubjectName "CN=mail.BLA-BLA.uaO=BLA-BLAC=UA" -DomainName mail.bla-bla.uaexh3-kv-0.bla-bla.ua.locexh3-kv-0, bla-bla.ua, bla-bla.ua.loc, bla.bla-bla.ua.locautodiscover.bla-bla.ua-GenerateRequest:$True -Keysize 2048 -FriendlyName "BLA-BLA Exchange 2010"
Сертификат необходимо установить на CAS сервера Exchange 2010.
Для установки сертификата, который выдан центром сертификации, необходимо выполнить следующие шаги наEXH20-KV-0 и EXH21-KV-0:
1. Скопировать сертификат на сервер Exchange 2010.
2. Используя Exchange Management Shell выполнить следующую команду:
Import-ExchangeCertificate -Path c:\certificates\import.pfx -Password:(Get-Credential).password
3.Задействовать импортированный сертификат для служб Exchange Server:
Enable-ExchangeCertificate –Thumbprint “94JJ9478HRY6R6RRH63211NJ1NN74BYY8F4H67B7” –Services IIS,SMTP,POP,IMAP


Параметры сертификата импортированного на сервера EXH20-KV-0 EXH21-KV-0
Параметр
Значение
CertificateDomains
mail.bla-bla.ua, exh3-kv-0.bla-bla.ua.loc, exh3-kv-0, exh1-kv-0.bla-bla.ua.loc, exh1-kv-0, bla-bla.ua, bla-bla.ua.loc, bla-bla.bla-bla.ua.loc, mail-bla.bla-bla.ua, autodiscover.bla-bla.ua
HasPrivateKey
True
IsSelfSigned
False
Issuer
CN=bla-bla-DC11-KV-0-CA, DC=bla-bla, DC=ua, DC=loc
NotAfter
15.05.2013 13:18:46
NotBefore
16.05.2011 13:18:46
PublicKeySize
2048
RootCAType
Enterprise
SerialNumber
1234560D000000001234
Services
IMAP, POP, IIS, SMTP
Status
Valid
Subject 
CN=mail.bla-bla.ua, O=BLA-BLA, C=UA
Thumbprint
94JJ9478HRY6R6RRH63211NJ1NN74BYY8F4H67B7

14.05.2013 необходимо повторно провести работы по задействованию нового сертификата для CAS и HT, поскольку  15.05.2013 истекает время действительности сертификата с отпечатком «94JJ9478HRY6R6RRH63211NJ1NN74BYY8F4H67B7».   

среда, 23 ноября 2011 г.

Ресурсные почтовые ящики в Exchange 2010 - бронирование

Помощник по ведению календаря
Помощник по ведению календаря (Calendar Assistant) обрабатывает поступающие приглашения на собрания, в результате чего собрания автоматически помещаются в календарь ресурсного почтового ящика. У обычных почтовых ящиков параметры помощника по ведению календаря настраиваются через графическую консоль управления на вкладке Параметры календаря. К сожалению, у ресурсных почтовых ящиков подобной вкладки нет, следовательно, в случае необходимости, придется настраивать параметры этого помощника через командную консоль управления. Могут быть выполнены следующие настройки:

· Включить/отключить помощник по ведению календаря. По умолчанию помощник по ведению календаря включен. Выключить его можно командой:
Set-CalendarProcessing –Identity "Room01" -AutomateProcessing None

Когда помощник по ведению календаря включен, становятся доступны следующие параметры:

· Удалять уведомления о переадресации собрания в папку "Удаленные". Уведомления о переадресации собрания после обработки помощником по ведению календаря перемещаются в папку «Удаленные». Этот параметр по умолчанию отключен. Включить его можно командой:
Set-CalendarProcessing –Identity "Room01" -RemoveForwardedMeetingNotifications $True

· Удалять устаревшие приглашения на собрания и ответы. Помощник по ведению календаря удаляет старые и избыточные изменения и ответы. Этот параметр по умолчанию включен. Отключить его можно командой:
Set-CalendarProcessing –Identity "Room01" –RemoveOldMeetingMessages $False

· Пометить новые приглашения на собрания как "Под вопросом". Если это свойство активно, входящие приглашения на собрания помечаются в календаре как «Под вопросом». Если отключено, то ожидающие запросы помечаются как «Свободен». Этот параметр по умолчанию включен. Отключить его можно командой:
Set-CalendarProcessing –Identity "Room01" –AddNewRequestsTentatively $False

· Обработать приглашения на встречу и ответы, созданные за пределами организации Exchange. Если этот параметр включен, то помощник по ведению календаря будет обрабатывать приглашения на собрания, поступившие извне организации Exchange. По умолчанию этот параметр отключен. Включить его можно командой:
Set-CalendarProcessing –Identity "Room01" –ProcessExternalMeetingMessages $False

Помощник по резервированию ресурсов
Помощник по резервированию ресурсов (Resource Booking Attendant) – это агент, позволяющий автоматически принимать или отклонять запросы на резервирование ресурсов на основе установленной для этих ресурсов политики. Как включается помощник по резервированию ресурсов через графический интерфейс Exchange, показано в прошлой части статьи на рис.3, но аналогичное действие можно выполнить и через командную консоль управления:

Set-CalendarProcessing "Room01" -AutomateProcessing AutoAccept

Примечание: Если помощник по резервированию ресурсов выключен, делегат почтового ящика ресурса должен самостоятельно принимать или отклонять все запросы. О делегатах поговорим чуть далее.

Состояние обоих помощников
Если вы обратите внимание на команды, управляющие состоянием помощников, то заметите, что оно управляется параметром календаря AutomateProcessing. Данный параметр может принимать три значения:

· None - Если значение этого параметра равно None, помощник по резервированию ресурсов и помощник по ведению календаря в этом почтовом ящике будут отключены;
· AutoUpdate (по умолчанию) - Если значение равно AutoUpdate, помощник по ведению календаря включен и он будет обрабатывать приглашения на собрания и ответы, а помощник по резервированию ресурсов будет отключен. Это рекомендуемая настройка;
· AutoAccept - Если значение этого параметра равно AutoAccept, помощник по резервированию ресурсов и помощник по ведению календаря в этом почтовом ящике будут включены. Это означает, что помощник по ведению календаря будет обновлять календарь, а затем помощник по резервированию ресурсов будет принимать приглашения на собрания на основе политики.
Политика ресурса
Как мы уже говорили ранее, помощник по резервированию ресурсов работает на основе политики, примененной к конкретным ресурсам. Политики для ресурсных почтовых ящиков настраиваются на нескольких вкладках:

Вкладка Политика ресурса

Начнем с вкладки Политика ресурса (Resource Policy) (рис.1). Здесь определяются основные параметры для помощника по резервированию ресурсов, такие как:

· Доступность резервирования в нерабочее время;
· Максимальная продолжительность резервирования;
· Возможность создавать повторяющиеся события, например, резервировать помещение на определенное время для еженедельных собраний;
· Запрет резервирования ресурса на определенное время;
· Параметры разрешения конфликтов в случае наложения по времени одного запроса на другой;
· Определяется список делегатов для данного ящика.


Рис.1: Вкладка Политика ресурса у ресурсного почтового ящика.

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

Кроме этого, можно самостоятельно наделить определенного сотрудника правом управления ресурсным почтовым ящиком, для этого ему просто необходимо дать полный доступ к этому ящику. Делается это точно также, как и для обычного почтового ящика через графическую консоль управления, либо командой:

Add-MailboxPermission –User “User1” –Identity “Room01” –AccessRights FullAccess

Вкладка Сведения о ресурсе

На вкладке Сведения о ресурсе (Resource Information) (рис.2), администратор может указать какая именно информация, поступающая вместе с запросом на бронирование, должна сохраняться в почтовом ящике, а какая – нет.

Дело в том, что при назначении совещания, к запросу может быть прикреплена конфиденциальная информация не только в виде темы собрания и основного текста, но и в виде вложений и других элементов. Сотрудники организации видеть эти данные не должны, по этому можно сделать так, чтобы все лишнее удалялось из ресурсного почтового ящика в момент поступления запроса. Кроме того, ресурсный почтовый ящик имеет стандартный SMTP адрес, следовательно, он может получать обычные письма. Это также не желательно и установив галочку в поле Удалять некалендарные элемента (Delete non- calendar items) вы проинструктируете Exchange удалять всю информацию, приходящую в ресурсный почтовый ящик, за исключением той, которая относятся к календарю.



Рис.2: Вкладка Сведения о ресурсе у ресурсного почтового ящика.

На этой вкладке также можно ввести текст, который будет добавлен в сообщения с подтверждением, либо отклонением резервирования. Этот текст может быть использован для более детального описания самого ресурса и добавляется он в начало основной части сообщения.

Соответствие запроса политике

Помощник по резервированию принимает решение о дальнейшей судьбе пришедшего запроса основываясь на политике, соответственно все запросы можно разделить на два типа и обрабатывать по-своему:

· Запросы, соответствующие политике — не противоречат ни одному из параметров планирования ресурса;
· Запросы, нарушающие политику — противоречат одному или нескольким параметрам планирования ресурса.
Поведение помощника по резервированию ресурса конфигурируется для каждой из категорий отдельно на двух разных вкладках — Запросы, соответствующие политике ресурса (Resource In- Policy Requests) и Запросы, не соответствующие политике ресурса (Resource Out- of- Policy Requests) (рис.3):



Рис.3: Конфигурирование поведения помощника по резервированию ресурса относительно политики резервирования.

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

На вкладке Запросы, не соответствующие политике ресурса заполняется список пользователей, которым разрешено отправлять запросы, не соответствующие политике. Подобные запросы отклонены не будут, но при этом, в любом случае, потребуется вмешательство делегата. Рекомендуется указывать здесь пользователей, наделенных особыми привилегиями, например руководителей компании, либо руководителей подразделений.

Сценарий использования
В качестве итога ко всему выше сказанному, я хотел бы сформулировать три, на мой взгляд, наиболее общих варианта использования данной технологии на практике. Основаны эти варианты будут именно на конфигурации автоматического резервирования.

Можно настроить ресурсный почтовый ящик так, чтобы:

· Ресурс бронировался автоматически;
· Запрос на бронирование пересылался бы делегату;
· Требовалось бы подключение делегата к ресурсному почтовому ящику, с целью обработки запросов в ручном режиме.
Для разных типов ресурсов настройки будут различными, все завит от предъявляемых требований, администратору нужно лишь знать о существовании описанных выше возможностей, а уж применить их через удобный графический интерфейс не составит большого труда.

Ресурсные почтовые ящики в Exchange 2010 - общие параметры

Создание ресурсного ящика
Создаются ресурсные почтовые ящики также просто, как и обычные. При помощи графической консоли нужно перейдя в настройки получателей – Почтовый ящик – Создать почтовый ящик… - выбрать Почтовый ящик места или Почтовый ящик оборудования.












Рис.1: Создание ресурсного почтового ящика через Exchange Management Console.

Далее просто следуя подсказкам мастера указать необходимые данные.

Аналогичное действие можно выполнить и при помощи командной консоли Exchange (EMS). Для почтового ящика места используется параметр –Room, следующим образом:

New-Mailbox -Database "YourDB" -Name Room01 -OrganizationalUnit "Rooms" -DisplayName "Room1" -UserPrincipalName Room01@test.local –Room

А для почтового ящика оборудования - параметр — Equipment:

New-Mailbox -Database " YourDB" -Name Pjector01 -OrganizationalUnit "Equipment" -DisplayName " Pjector01" -UserPrincipalName Pjector01@test.local –Equipment

Примечание: Рекомендуется выделить для ресурсных почтовых ящиков отдельные Organizational Unit (OU) в Active Directory.

Список всех имеющихся ресурсных почтовых ящиков можно получить следующим образом:

Get-Mailbox –Filter {(ResourceType –eq ‘Room’) -or (ResourceType –eq ‘Equipment’)} | FT Name, ResourceType

Если же мы теперь взглянем на свойства этих ящиков через графическую консоль управления Exchange (EMC), то заметим, что у них есть значительные отличия по сравнению с обычными почтовыми ящиками (рис.2).



Рис.2: Сравнение почтового свойств ящика ресурса и обычного почтового ящика.

Далее, давайте более детально рассмотрим специфические свойства этого типа ящиков.

Для описания параметров, я предлагаю пройтись по вкладкам окна свойств ресурсных почтовых ящиков, и начать стоит с вкладки «Общие параметры ресурса».

Общие параметры ресурса
Первое свойство, о котором я хотел бы рассказать – это Емкость ресурса (Resource Capacity) (рис.3).



Рис.3: Редактирование общих параметров ресурсов.

Как не трудно догадаться из названия, используется он для того, чтобы указать, каким количеством людей данный ресурс может быть использован в одно время. Здесь можно указать вместимость переговорных комнат, автомобилей и т.п... При этом информация о емкости ресурса доступна при его выборе из адресной книги в MS Outlook во время его бронирования (рис.4).

Примечание: Процесс бронирования ресурсов при помощи M Outlook 2010 был детально расписан в одной из предыдущих статей, а о том, как это происходит с точки зрения сервера, мы поговорим чуть далее.



Рис.4: Информация о емкости ресурса в MS Outlook.

Нужно знать, что данный параметр также используется помощником по резервированию ресурсов (Resource Booking Attendant) для автоматического выбора наиболее подходящих ресурсов. О том, как работает помощник по резервированию ресурсов, мы поговорим во второй части статьи, а здесь важно не забыть его включить, установив соответствующую галочку (см. рис.3).

Кроме этого, на вкладке Общие параметры ресурса, вы можете указать дополнительные свойства. Например, уточнить, что переговорная оснащена ТВ-аппаратурой, телефоном и т.п., автомобиль – кондиционером… К сожалению, создать список дополнительных свойств для ресурсных почтовых ящиков через графические консоли управления Exchange нельзя. Это можно сделать только путем изменения конфигурации ресурсов организации Exchange при помощи командлета Set- ResourceConfig и параметра –ResourcePropertySchema.

Set-ResourceConfig –ResourcePropertySchema (“Room/TV”, “Room/Tel”, “Equipment/Conditioner”)



Рис.5: Создание списка дополнительных параметров ресурсных почтовых ящиков.

В данном случае, для указания свойств почтовых ящиков места, используется суффикс Room/, а для почтовых ящиков оборудования – Equipment/. Впоследствии, при редактировании разных типов ресурсных почтовых ящиков будет доступен только соответствующий им набор параметров, см. рис.3.

Примечание: Не допускается использовать знаки пробелов при указании дополнительных свойств.

Обновлять данный список параметров нельзя, возможно его только полностью пересоздавать! Для этого можно воспользоваться следующей конструкцией:

$CurrentConfig = Get-ResourceConfig


$CurrentConfig.ResourcePropertySchema+="Room/Window"


Set-ResourceConfig –ResourcePropertySchema $CurrentConfig.ResourcePropertySchema

Установить дополнительные параметры ресурсным почтовым ящикам можно через графическую консоль управления, как показано на рис.3, либо воспользоваться PowerShell следующим образом:

Set-Mailbox –Identity “Room02” –ResourceCustom (“TV”, “Tel”)


среда, 26 октября 2011 г.

Open pelay


 Открыть SMTP для отправки всем подряд, например, когда есть сервисы внутри организации для отправки различных отчетов, прайсов.

Спасает положение вот такая вот строка:

Get-ReceiveConnector "Receive Connector Name" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights "Ms-Exch-SMTP-Accept-Any-Recipient"
________________________
дополнительно:


Get-ReceiveConnector "Receive Connector Name" | Get-ADPermission -user "NT AUTHORITY\Anonymous Logon" |where {$_.ExtendedRights -like "ms-exch-smtp-accept-authoritative-domain-sender"}

воскресенье, 21 августа 2011 г.

Role Based Access Control (RBAC) – новая модель управления доступом к Exchange 2010


До выхода Exchange 2010 наделение пользователей дополнительными возможностями осуществлялось при помощи функционала делегирования управления и списков управления доступом (ACL). В Exchange 2010 сердцем модели авторизации стала новая система разрешений Role Based Access Control(RBAC).
Role Based Access Control (RBAC) — это новая модель разрешений в Microsoft Exchange Server 2010. При использовании RBAC отпадает необходимость в изменении и поддержании списков управления доступом (ACL), использовавшихся в Exchange Server 2007.
Принципиальное отличие в данном случае состоит в том, что разрешения ассоциируются не с объектами AD, такими как серверы и почтовые ящики, а с задачами. Также необходимо знать, что в отличие от назначения разрешений безопасности (например в NTFS), где приоритетно ограничивающее разрешение, в RBAC пользователю присваиваетсяобъединение всех ролей и прав, которые для него назначены.
К сожалению, Exchange Management Console (EMC) не позволяет полноценно работать с RBAC, по этому, мы будем использовать командлеты Exchange Management Shell (EMS). Правда для просмотра набора ролей и редактирования их участников подойдет и веб-сайт с Exchange Control Panel (ECP).

Принцип работы RBAC:

Справка TechNet предлагает визуализировать схему работы RBAC следующим образом:
Рис.1: Визуальная схема работы RBAC.
Мне же больше нравится несколько модернизированный её вид:
Рис.2: Треугольник RBAC.
Я считаю, что модель RBAC более правильно будет ассоциировать именно с треугольноком, который наглядно показывает на какие вопросы должен ответить администратор планируя делегирование прав доступа.
На практике, более правильным будет порядок вопросов Кто? –> Что? –> Где?, но для лучшего понимания теории давайте рассмотрим эти вопросы немного в другой последовательности.

1. Что?

Ответ на вопрос «Что?» должен подразумевать под собой те действия, которыми вы хотите наделить пользователя, т.е. Что он должен иметь право делать. Для ответа на этот вопрос существуют роли (Roles).
Роли управления (Management Roles) являются частью модели RBAC. Роли работают как логическая группировкакомандлетов, которые объединены для предоставления доступа к просмотру и изменению конфигурации компонентов Exchange 2010, например почтовых ящиков, правил транспорта и получателей. 
По умолчанию, сервер Exchange 2010 предоставляет множество встроенных ролей управления, которые можно использовать для администрирования организации. В таблице приведен их список:
Active Directory Permissions Role
Роль разрешений Active Directory
Address Lists Role
Роль списков адресов
ApplicationImpersonation Role
Роль ApplicationImpersonation
Audit Logs Role
Роль журналов аудита
Cmdlet Extension Agents Role
Роль агентов расширения командлетов
Database Availability Groups Role
Роль групп доступности базы данных
Database Copies Role
Роль копий баз данных
Databases Role
Роль баз данных
Disaster Recovery Role
Роль аварийного восстановления
Distribution Groups Role
Роль групп рассылки
Edge Subscriptions Role
Роль пограничных подписок
E-Mail Address Policies Role
Роль политик адресов электронной почты
Exchange Connectors Role
Роль соединителей Exchange
Exchange Server Certificates Role
Роль сертификатов сервера Exchange Server
Exchange Servers Role
Роль серверов Exchange
Exchange Virtual Directories Role
Роль виртуальных каталогов Exchange
Federated Sharing Role
Роль федеративного общего доступа
Information Rights Management Role
Роль управления правами на доступ к данным
Journaling Role
Роль ведения журнала
Legal Hold Role
Роль юридического удержания
Mail Enabled Public Folders Role
Роль общих папок с включенной поддержкой почты
Mail Recipient Creation Role
Роль создания получателя электронной почты
Mail Recipients Role
Роль получателей почты
Mail Tips Role
Роль советов по использованию электронной почты
Mailbox Import Export Role
Роль экспорта и импорта почтового ящика
Mailbox Search Role
Роль поиска в почтовом ящике
Message Tracking Role
Роль отслеживания сообщений
Migration Role
Роль миграции
Monitoring Role
Отслеживание роли
Move Mailboxes Role
Перемещение роли почтовых ящиков
MyBaseOptions Role
Роль Мои_базовые_параметры
MyContactInformation Role
Роль Моя_контактная_информация
MyDiagnostics Role
Роль MyDiagnostics
MyDistributionGroupMembership Role
Роль Членство_в_моей_группе_рассылки
MyDistributionGroups Role
Роль Мои_группы_рассылки
MyProfileInformation Role
Роль Информация_о_моем_профиле
MyRetentionPolicies Role
Роль Мои_политики_хранения
MyVoiceMail Role
Роль Моя_голосовая_почта
Organization Client Access Role
Роль клиентского доступа организации
Organization Configuration Role
Роль конфигурации организации
Organization Transport Settings Role
Роль параметров транспорта организации
POP3 and IMAP4 Protocols Role
Роль протоколов POP3 и IMAP4
Public Folder Replication Role
Роль репликации общих папок
Public Folders Role
Роль общих папок
Receive Connectors Role
Роль соединителей получения
Recipient Policies Role
Роль политик получателя
Remote and Accepted Domains Role
Роль удаленных и обслуживаемых доменов
Retention Management Rolet
Роль управления хранением
Role Management Role
Роль управления ролями
Security Group Creation and Membership Role
Роль создания и членства в группе безопасности
Send Connectors Role
Роль соединителей отправки
Support Diagnostics Role
Поддержка роли диагностики
Transport Agents Role
Роль агентов транспорта
Transport Hygiene Role
Роль санации транспорта
Transport Queues Role
Роль очередей транспорта
Transport Rules Role
Роль правил транспорта
UM Mailboxes Role
Роль почтовых ящиков единой системы обмена сообщениями
UM Prompts Role
Роль запросов единой системы обмена сообщениями
Unified Messaging Role
Роль единой системы обмена сообщениями
Unscoped Role Management Role
Роль управления с незаданной областью
User Options Role
Роль параметров пользователя
View-Only Configuration Role
Роль конфигурации с правами только на просмотр
View-Only Recipients Role
Роль получателей с правами только на просмотр
Совет: Если вы хотите применять настраиваемые сценарии или командлеты, не относящихся к Exchange, то вам необходимо использовать Роль управления с незаданной областью (Unscoped Role Management Role).
Список всех ролей можно получить командлетом:
Get-ManagementRole
Рис.3: Вывод списка ролей.
Каждая роль включает в себя командлеты и параметры, необходимые пользователям для управления определенными компонентами Exchange.
Вы можете проконтролировать какие именно командлеты может выполнять роль, выполнив команду:
Get-ManagementRoleEntry "Mail Recipients\*"
Рис.4: Вывод списка командлетов роли Mail Recipients.
Данная команда показывает нам все командлеты, которые применимы внутри роли Mail Recipients.
Аналогично можно использовать следующие конструкции для получения списка командлетов, доступных ролям:
Пример
Описание
*\*
Возвращает список всех записей роли для всех ролей.
*\Set-Mailbox
Возвращает список всех записей роли, которые содержат командлет Set-Mailbox.
Mail Recipients\*
Возвращает список всех записей роли в роли получателей почты.
Mail Recipients\*Mailbox
Возвращает список всех записей роли в роли получателей почты, оканчивающихся на Mailbox.
My*\*Group*
Возвращает список всех записей роли, которые содержат строку Group в имени командлета, для всех ролей, начинающихся с My.
Встроенные роли, выполняя определенный список задач, не покрывают все сценарии использования Exchange 2010. Для более гибкой настройки политики распределения полномочий, у нас есть возможность создавать дочерние роли (Child Roles).
Рис.5: Иерархия ролей.
Создать дочернюю роль можно командлетом New-ManagementRole, указав при этом её родителя при помощи параметра –Parent.
New-ManagementRole –Name “New Databases” – Parent “Databases”
Есть несколько вещей, которые должен знать администратор при создании дочерних ролей:
  1. Вы можете создавать дочерние роли для уже дочерних ролей.
  2. Дочерняя роль НЕ может обладать большими полномочиями, чем родительская, даже если родительская роль сама является дочерней.
  3. У каждой роли должно быть минимум одно разрешение.
  4. Перед удалением роли необходимо вручную удалить все её разрешения.
  5. У вас должно быть право выполнять Get-командлеты для этой роли.
После создания роли необходимо отредактировать её разрешения при помощи командлета Get-ManagementRoleEntry. Для начала, нужно удалить все разрешения, кроме одного:
Get-ManagementRoleEntry “New Databases\*” | where {$_.name –ne “Get-Recipient”} | Remove-ManagementRoleEntry
Далее нужно добавить необходимые разрешения, не забыв про то, которое мы оставили ранее. При помощи свойства –Parameters можно включить только те параметры, которые вы считаете нужными:
Add-ManagementRoleEntry “New Databases\Mount-Database” –Parameters Confirm,Debug
Рис.6: Добавление дочерней роли.
Все роли управления, образованные от родительской встроенной роли управления, относятся к одному типу роли. Типы ролей управления также представляют собой максимальный набор командлетов и их параметров, который можно добавить в роль, связанную со определенным типом.
Типы ролей управления делятся на следующие категории.
  • Администратор или специалист (Administrative or specialist)   Роли, связанные с типом ролей администратора или специалиста, имеют более широкую область влияния в организации Exchange. Роли этого типа позволяют выполнять такие задачи, как управление сервером или получателями, настройка организации, администрирование в соответствии с требованиями, аудит и другие.
  • Ориентированные на пользователя (User-focused)   Роли, связанные с типом ролей, ориентированных на пользователя, имеют область влияния, привязанную к одному пользователю. Роли этого типа позволяют выполнять такие задачи, как настройка профиля пользователя и самоуправление, управление пользовательскими группами рассылки и другие.
    Имена ролей, связанных с типами ролей, ориентированных на пользователя, и имена типов ролей, ориентированных на пользователя, начинаются с My.
  • Специальность (Specialty)   Роли, связанные с типом ролей специальности, позволяют выполнять задачи, не относящиеся к типам административных или ориентированных на пользователя ролей. Роли этого типа позволяют выполнять такие задачи, как олицетворение приложения (application impersonation) и использование сценариев и командлетов, не относящихся к Exchange.
Теперь, когда мы знаем что именно сможет делать пользователь, можно переходить к следующему вопросу и указать на самого пользователя.

2. КТО?

Данный угол треугольника RBAC подразумевает под собой ответ на вопрос Кто?. Т.е. кто именно может выполнять обозначенные в вопросе «Что?» действия.
В качестве ответа на вопрос «Кто?» мы можем использовать конкретного пользователя (в RBAC пользователи представлены в виде почтовых ящиков), или группу. Чтобы выдать полномочия пользователю, необходимо добавить его в группу ролей управления (Role Groups), а затем группу связать с определенной ролью (Role).
Группа ролей управления(Management Role Group) — это универсальная группа безопасности, используемая в модели RBAC в Microsoft Exchange Server 2010. В Active Directory, группы ролей (Role Groups) располагаются в отдельной OU – Microsoft Exchange Security Groups. Там же можно посмотреть, кто входит в группу. Для всех участников группы ролей назначается идентичный набор ролей.
Рис.7: Расположение групп ролей в AD.
Существует несколько встроенных групп ролей, эти роли, входят в комплект поставки Exchange 2010. Во встроенных группах ролей можно добавлять и удалять пользователей. В большинстве групп ролей можно также добавлять и удалять назначения ролей.
В следующей таблице перечислены встроенные группы ролей в составе Exchange 2010.
Группа ролей
Описание
Organization Management
Управление организацией
Администраторы, являющиеся участниками группы ролей Управление организацией, имеют административный доступ ко всей организации Exchange 2010 и могут выполнять практически все задачи с любым объектом Exchange 2010.
View-Only Organization Management
Управление организацией с правами только на просмотр
Администраторы, являющиеся участниками группы ролей Управление организацией с правами только на просмотр, могут просматривать свойства любого объекта в организации Exchange.
Recipient Management
Управление получателями
Администраторы, являющиеся участниками группы ролей Управление получателями, имеют административный доступ для создания или изменения получателей Exchange 2010 в организации Exchange 2010.
UM Management
Управление единой системой обмена сообщениями
Администраторы, являющиеся участниками группы ролей управления единой системы обмена сообщениями, могут управлять компонентами единой системы обмена сообщениями в организации Exchange, например конфигурацией сервера единой системы обмена сообщениями, свойствами этой системы для почтовых ящиков, запросами системы и конфигурацией автосекретаря единой системы обмена сообщениями.
Discovery Management
Управление обнаружением
Администраторы или пользователи, которые являются участниками группы ролей Управление обнаружением, могут выполнять поиск данных, которые соответствуют определенным критериям, в почтовых ящиках организации Exchange.
Records Management
Управление записями
Пользователи, которые являются участниками группы ролей Управление записями, могут настраивать такие соответствия требованиям, как теги политики хранения, классификации сообщений, правила транспорта и другие.
Server Management
Управление сервером
Администраторы, являющиеся участниками группы ролей управления сервером, имеют административный доступ к конфигурации сервера Exchange 2010. Они не имеют административного доступа к конфигурации получателя Exchange 2010.
Help Desk
Служба поддержки
Пользователи, являющиеся участниками группы ролей службы поддержки, могут выполнять ограниченное число задач управления получателями Exchange 2010.
Hygiene Management
Управление санацией
Администраторы, которые являются участниками группы ролей «Управление санацией», могут настраивать эти функции защиты от нежелательной почты и вирусов в Exchange 2010. Сторонние программы, интегрированные с Exchange 2010, могут добавлять в эту группу ролей учетные записи служб, чтобы предоставить этим программам доступ к командлетам, необходимым для извлечения и настройки конфигурации Exchange.
Public Folder Management
Управление общими папками
Администраторы, являющиеся участниками группы ролей управления общими папками, могут управлять общими папками и базами данных на серверах Exchange 2010.
Delegated Setup
Делегированная установка
Администраторы, являющиеся участниками группы ролей делегированной установки, могут развертывать предварительно подготовленные серверы Exchange 2010.
Вы можете назначить группе несколько ролей, если желаете, чтобы её члены имели больше возможностей. Также, при создании группы можно указать область (Scope), если вы не хотите, чтобы была присвоена область по умолчанию (но об этом чуть позже).
Чтобы создать новую группу ролей нужно воспользоваться командлетом New-RoleGroup:
New-RoleGroup “Group new databases” –Roles “New Databases”
Добавить пользователя или группу пользователей в группу ролей можно при помощи команды:
Add-RoleGroupMember “Group new databases” -Member user1
Рис.8: Добавление группы ролей и связывание её с пользователем.
Добавить пользователя в группу и просмотреть её параметры вы можете и при помощи Exchange Control Panel - ECP -> Users & Groups -> Administrator Roles.
Рис.9: Просмотр информации о группе через веб-страницу Exchange Control Panel.
Увидеть список всех групп мы можем, выполнив команду:
Get-RoleGroup

3. ГДЕ?

Следующим вопросов, на который вы должны ответить – это вопрос «Где?». Т.е. на какие объекты вы планируете давать разрешения? Ответ на данный вопрос вы должны задать в параметре Role Scope (область действия роли).
Область действия роли (Role Scope) – это объект, на который направлено действие конкретной роли, это может быть целая организация, отдельная OU в AD, либо группа пользователей.
У всех ролей RBAC есть свои области действия (Management role scope).
Когда вы создаете новую роль RBAC, по умолчанию, она будет наследовать область действия своего родителя. Но вы можете указать область действия роли также непосредственно во время её создания. Хорошей практикой является предварительное создание области действия (Role Scope) и последующее назначение её определенной роли с той целью, чтобы эту область потом можно было использовать ещё раз.
Создание новой области действия происходит при помощи командлета New-ManagementScope, к которому должны быть применены параметры фильрации:
  • RecipientRestrictionFilter
  • ServerRestrictionFilter
  • ServerList
Например так:
New-ManagementScope -name "Managers" -RecipientRestrictionFilter {memberofgroup -eq "cn=Managers,ou=Managers,dc=domain,dc=local"}
Эта команда создает новую область действия с названием Managers из всех пользователей, группы Managers, находящейся в OU Managers.
Таким образом, мы видим, что области могут быть двух видов:
  • Неявные области (implicit scopes) - наследуемые;
  • Явные области (explicit scopes) - предварительно определенные и настраиваемые:
    • Предварительно определенные относительные области (Predefined Relative Scopes)
    • Настраиваемые области (Custom Scopes)
Посмотреть область действия конкретной роли можно командой:
Get-ManagementRole “Databases” | fl *scope*
Рис.10: Область действия конкретной роли
В выводе команды мы может увидеть, что каждая роль иметь следующие типы областей:
  • Область чтения получателей (Recipient read scope)  Неявная область чтения получателей определяет объекты получателей, которые пользователь с назначенной ролью управления может читать из Active Directory.
  • Область записи получателей (Recipient write scope)   Неявная область записи получателей определяет объекты получателей, которые пользователь с назначенной ролью управления может изменять в Active Directory.
  • Область чтения конфигурации (Configuration read scope)   Неявная область чтения конфигурации определяет объекты конфигурации, которые пользователь с назначенной ролью управления может читать из Active Directory.
  • Область записи конфигурации (Configuration write scope)   Область записи конфигурации определяет объекты сервера и организации, которые пользователь с назначенной ролью управления может изменять в Active Directory.
Области должны добавляться в один из этих типов областей.
Настраиваемые области позволяют определить на более детальном уровне область, к которой будет применяться роль управления, но нужно учитывать, что настраиваемая область не должна выходить за границы неявной (наследуемой) области чтения.
Назначение области для определенной роли делается при помощи политики назначений (Role Assignment), командлетами New-ManagementRoleAssignment или Set-ManagementRoleAssignment.

4. Назначение ролей (Role Assignment)

Наконец мы добрались до центра треугольника.
Как вы уже заметили «Где», «Что» и «Кто» - это все элементы Active Directory. Таким образом, связующим, для этих трех элементов будет другой объект AD – назначение ролей (Role Assignment).
Политика назначения ролей управления (Role Assignment) — это набор из одной или нескольких ролей управления. Политики назначения ролей являются частью модели RBAC и позволяют определять, какие именно параметры может изменять конечный пользователь.
Командлет New-RoleGroup создает именно политику назначения (Role Assignment) между группой ролей (Role Groups) и ролью (Management Role), с дополнительными атрибутами.
Рис.11: Модель политики назначения ролей управления
Запустив команду
Get-ManagementRoleAssignment
вы увидите список из порядка 160 значений. Все потому, что Role Assignment связывает конкретную роль, область и группу ролей 1 к 1-ому. Таким образом, каждый раз, назначая роль группе ролей создается уникальное назначение (Role Assignment), которое и связывает их вместе.
Примечание: Как уже говорилось в самом начале, очень важно не путать RBAC с назначением разрешений безопасности (например NTFS), где приоритетно ограничивающее разрешение. В RBAC пользователю присваиваетсяобъединение всех ролей, которые для него назначены. Таким образом, нужно назначать пользователю только те роли, которые необходимы.
Назначения создаются при помощи командлета New-ManagementRoleAssignment с добавлением в виде параметров всех связываемых элементов: имени назначение (–Name), группы ролей (–SecurityGroup), роли (–Role) и области действия (-RecipientRelativeWriteScope), например так:
New-ManagementRoleAssignment -Name -SecurityGroup < USG> -Role -RecipientRelativeWriteScope < MyDistributionGroups | Organization | Self >
Удалить роль из группы ролей можно простым удалением назначения, связывающего их.

Заключение

В конце давайте подведем итог и закрепим основные понятия:
Роль (Role) – определяет набор командлетов и параметров, которые могут быть запущенны внутри неё. Это угол треугольника, который определяет Что именно пользователь можете сделать. В PowerShell – ManagementRole.
Запись роли (Role Entry) – индивидуальная запись для роли, которая определяет командлет и параметр этой роли. Это именно та часть, которую нужно редактировать, когда вы хотите тонко настроить права роли. В PowerShell – ManagementRoleEntry.
Группа ролей (Role Group) – это группа безопасности, которая определяет Кто принадлежи конкретной роли или области. Это угол треугольника, который обозначает кто именно может выполнять указанные выше действия. В PowerShell – RoleGroup.
Область (Scope) – область определяет объекты Где находятся объекты, на которые накладывает свое действие определенная роль. Область определяет Где роль может работать. В PowerShell – ManagementScope.
Назначение ролей (Role Assignment) – это объект AD, который связывает вместе все 3 угла треугольника, т.е. объекты Кто, Что и Где. В PowerShell – ManagementRoleAssignment.
RBAC это очень обширная и не простая тема. В этой статье я лишь хотел изложить её основы, чтобы вы начали смотреть на эту технологию с правильной точки зрения. Главное, когда планируете политику RBAC, не забывайте о том, что это треугольник, в центре которого Role Assignment.
В итоге, RBAC дает большим компаниям комплексную модель делегирования полномочий и позволяет более тонко настраивать разрешения пользователей и специалистов. Для небольших и средних организаций, уже заложенный в Exchange 2010 набор ролей, групп, областей и назначений предоставляет необходимый и достаточный функционал делегирования, при этом позволяя гибко изменять его под свои нужды.
На этом теоретическая часть закончена, более подробную информацию про RBAC вы можете получить в библиотеке TechNet по адресу - http://technet.microsoft.com/en-us/library/dd297943.aspx, также есть и русская справка вот тут -http://technet.microsoft.com/ru-ru/library/dd297943.aspx, но лично я рекомендую использовать английскую, т.к. в русской очень легко запутаться и не правильно понять суть написанного.