Всем доброго времени суток!
В больших организациях, как правило, возникает необходимость разделения прав между Администраторами. Как правило это Администраторы головного предприятия и Администраторами филиальной сети. Администраторам филиальной сети , как правило, выпадает необходимость в заведении пользователей, регистрации им почтовых ящиков. Про Делегирование прав в AD DS, я думаю, напишу позже, а вот про делегирование прав в Exchange возникла необходимость лично у меня сейчас. Когда то я уже делал это, но моменты некоторые стерлись в голове.
Давайте вспоминать вместе.
От том как работает RBAC в Exchange в интернете можно найти немало статей, но в моем случае задача достаточно специфична.
Условия задачи.
1. Имеем домен domain.local
2. Есть филиал, контейнер которого находится в домене domain.local. Учетные записи пользователей лежат в этом контейнере. domain.local/branch
3. Необходимо дать права Администратору филиала управлять ящиками своих пользователей. Сами ящики лежат на сервере Exchange в отдельной базе.
То есть, задача стоит так, что Администратор филиала создает ящики только пользователям своего филиала и только в своей базе. Если он попытается привязать ящик к другому пользователю организации или поместить ящик в другую базу он должен получить отказ.
Задача ясна и приступаем к ее реализации.
Для начала заходим на сервер Exchange и открываем с повышенными правами Exchange management shell.
1. Граница почтовых баз, в которых будут находиться ящики пользователей филиала.
2. Это ограничение контейнером AD DS, ящики будут создаваться только учетным записям в этом контейнере.
ШАГ 1.
Создаем границы почтовых баз. Вариантов ограничения тут два.
1. Ограничение на основе конкретных баз. Этот метод имеет свой минус в том, что если у Вас потом добавятся еще база то Вам придется изменять условия.
#New-ManagementScope -Name "Branch Databases" -DatabaseList BR-MAILDB01, BR-MAILDB02
2. Наиболее гибкий вариант. При создании баз филиала использовать префиксы баз. Затем создать фильтр, на основе которого потом вновь созданные базы будут автоматически попадать в границы
#New-ManagementScope "Branch Databases" -DatabaseRestrictionFilter {Name -like "BR-*" }
Где Branch Databases это произвольное имя Management Scope филиала почтовых баз
Теперь надо создать границы пользователей филиала.
#New-ManagementScope "Branch Recipients management scope" -RecipientRoot "DOMAIN.LOCAL/Branch" -RecipientRestrictionFilter {RecipientType -ne $null}
Где BRANCH Mail Recipient Creation это имя роли. Задается произвольно, что бы Вам было понятно.
После создания роли, список действий для этой роли можно получить командой
#Get-ManagementRoleEntry "BRANCH Mail Recipient Creation\*"
В результате будет выведен список действий, который будет применен к этой роли. Если Вы хотите удалить какое либо действие из этой роли введите команду
#Remove--ManagementRoleEntry "BRANCH Mail Recipient Creation\rolename"
У себя я оставил следующие роли (Exchange 2016)
Name
----
Get-MailContact
Get-ADServerSettings
Get-AddressBookPolicy
Get-MailUser
Get-Mailbox
Get-MailboxPreferredLocation
Get-ManagementRoleAssignment
Get-MobileDeviceMailboxPolicy
Get-OrganizationalUnit
Get-RbacDiagnosticInfo
Get-RemoteMailbox
Get-ResourceConfig
Get-RoleAssignmentPolicy
Get-SharingPolicy
Get-ThrottlingPolicy
Get-ThrottlingPolicyAssocia...
Get-Trust
Get-UnifiedAuditSetting
Get-User
Get-UserPrincipalNamesSuffix
New-MailContact
New-MailUser
New-Mailbox
New-SchedulingMailbox
Remove-MailContact
Remove-MailUser
Remove-Mailbox
Remove-PushNotificationSubs...
Remove-RemoteMailbox
Set-ADServerSettings
Set-MailboxFolderPermission
Set-RemoteMailbox
Set-UnifiedAuditSetting
Start-AuditAssistant
Write-AdminAuditLog
Get-MailboxDatabase
Get-Recipient
New-RemoteMailbox
ШАГ 3.
Теперь у нас все готово для последнего шага. Собираем все вместе. Для этого выполняем несколько команд.
Собираем необходимые роли управления в переменную.
#$ManagementRoles_Recipient = (Get-RoleGroup -Identity 'Recipient Management').Roles | Get-ManagementRole | Where-Object { $_.Name -ne 'Mail Recipient Creation' }
#$ManagementRoles_Recipient += Get-ManagementRole 'BRANCH Mail Recipient Creation'
Где
Branch Recipient Management и Управление почтовыми ящиками серверов с именем BR это имя и описание Административной группы группы, которая будет отображаться в Exchange control patel (https://ex/ecp) . Permissions- Admin roles.
Branch Recipients management scope и Branch Databases названия границ, которые были созданы в ШАГ 1.
Вот собственно и все. Заходим в панель управления Exchange, Permissions- Admin roles находим Branch Recipient Management и добавляем в нее группу Администраторов филиала.
После этого Администраторы филиалов заходят по адресу https://ex/ecp вводят свои учетные данные и работают с ящиками пользователей.
В больших организациях, как правило, возникает необходимость разделения прав между Администраторами. Как правило это Администраторы головного предприятия и Администраторами филиальной сети. Администраторам филиальной сети , как правило, выпадает необходимость в заведении пользователей, регистрации им почтовых ящиков. Про Делегирование прав в AD DS, я думаю, напишу позже, а вот про делегирование прав в Exchange возникла необходимость лично у меня сейчас. Когда то я уже делал это, но моменты некоторые стерлись в голове.
Давайте вспоминать вместе.
От том как работает RBAC в Exchange в интернете можно найти немало статей, но в моем случае задача достаточно специфична.
Условия задачи.
1. Имеем домен domain.local
2. Есть филиал, контейнер которого находится в домене domain.local. Учетные записи пользователей лежат в этом контейнере. domain.local/branch
3. Необходимо дать права Администратору филиала управлять ящиками своих пользователей. Сами ящики лежат на сервере Exchange в отдельной базе.
То есть, задача стоит так, что Администратор филиала создает ящики только пользователям своего филиала и только в своей базе. Если он попытается привязать ящик к другому пользователю организации или поместить ящик в другую базу он должен получить отказ.
Задача ясна и приступаем к ее реализации.
Для начала заходим на сервер Exchange и открываем с повышенными правами Exchange management shell.
ПримечаниеВ качестве понимания как работает RBAC можно ознакомиться например вот этой статьей http://www.alexxhost.ru/2010/04/role-based-access-control-rbac-exchange.htmlДля начала создадим границы для Администратора филиала. Таких границ у него будет две.
1. Граница почтовых баз, в которых будут находиться ящики пользователей филиала.
2. Это ограничение контейнером AD DS, ящики будут создаваться только учетным записям в этом контейнере.
ШАГ 1.
Создаем границы почтовых баз. Вариантов ограничения тут два.
1. Ограничение на основе конкретных баз. Этот метод имеет свой минус в том, что если у Вас потом добавятся еще база то Вам придется изменять условия.
#New-ManagementScope -Name "Branch Databases" -DatabaseList BR-MAILDB01, BR-MAILDB02
2. Наиболее гибкий вариант. При создании баз филиала использовать префиксы баз. Затем создать фильтр, на основе которого потом вновь созданные базы будут автоматически попадать в границы
#New-ManagementScope "Branch Databases" -DatabaseRestrictionFilter {Name -like "BR-*" }
Где Branch Databases это произвольное имя Management Scope филиала почтовых баз
Теперь надо создать границы пользователей филиала.
#New-ManagementScope "Branch Recipients management scope" -RecipientRoot "DOMAIN.LOCAL/Branch" -RecipientRestrictionFilter {RecipientType -ne $null}
Где Branch Recipients management scope это произвольное имя Management Scope учетных записей пользователей филиала. DOMAIN.LOCAL/Branch это контейнер в AD DS.
ШАГ 2.
После создания границ ящиков и пользователей необходимо создать права Администратору филиала, что бы он мог создавать ящики и управлять ими. То есть создадим новую роль. Роль будет создаваться на основе родительской роли Mail Recipient Creation.
Примечание: Если у Вас много филиалов, то этот шаг выполняется только ОДИН раз.
#New-ManagementRole -Name "BRANCH Mail Recipient Creation" -Parent "Mail Recipient Creation"
Где BRANCH Mail Recipient Creation это имя роли. Задается произвольно, что бы Вам было понятно.
После создания роли, список действий для этой роли можно получить командой
#Get-ManagementRoleEntry "BRANCH Mail Recipient Creation\*"
В результате будет выведен список действий, который будет применен к этой роли. Если Вы хотите удалить какое либо действие из этой роли введите команду
#Remove--ManagementRoleEntry "BRANCH Mail Recipient Creation\rolename"
У себя я оставил следующие роли (Exchange 2016)
Name
----
Get-MailContact
Get-ADServerSettings
Get-AddressBookPolicy
Get-MailUser
Get-Mailbox
Get-MailboxPreferredLocation
Get-ManagementRoleAssignment
Get-MobileDeviceMailboxPolicy
Get-OrganizationalUnit
Get-RbacDiagnosticInfo
Get-RemoteMailbox
Get-ResourceConfig
Get-RoleAssignmentPolicy
Get-SharingPolicy
Get-ThrottlingPolicy
Get-ThrottlingPolicyAssocia...
Get-Trust
Get-UnifiedAuditSetting
Get-User
Get-UserPrincipalNamesSuffix
New-MailContact
New-MailUser
New-Mailbox
New-SchedulingMailbox
Remove-MailContact
Remove-MailUser
Remove-Mailbox
Remove-PushNotificationSubs...
Remove-RemoteMailbox
Set-ADServerSettings
Set-MailboxFolderPermission
Set-RemoteMailbox
Set-UnifiedAuditSetting
Start-AuditAssistant
Write-AdminAuditLog
Get-MailboxDatabase
Get-Recipient
New-RemoteMailbox
ШАГ 3.
Теперь у нас все готово для последнего шага. Собираем все вместе. Для этого выполняем несколько команд.
Собираем необходимые роли управления в переменную.
#$ManagementRoles_Recipient = (Get-RoleGroup -Identity 'Recipient Management').Roles | Get-ManagementRole | Where-Object { $_.Name -ne 'Mail Recipient Creation' }
#$ManagementRoles_Recipient += Get-ManagementRole 'BRANCH Mail Recipient Creation'
Не забываем изменить BRANCH Mail Recipient Creation на свое если оно отличается от моего примера.
#New-RoleGroup -Name "Branch Recipient Management" -Description "Управление почтовыми ящиками серверов с именем BR" -CustomRecipientWriteScope "Branch Recipients management scope" -CustomConfigWriteScope "Branch Databases" -Roles $ManagementRoles_Recipient
Где
Branch Recipient Management и Управление почтовыми ящиками серверов с именем BR это имя и описание Административной группы группы, которая будет отображаться в Exchange control patel (https://ex/ecp) . Permissions- Admin roles.
Branch Recipients management scope и Branch Databases названия границ, которые были созданы в ШАГ 1.
Вот собственно и все. Заходим в панель управления Exchange, Permissions- Admin roles находим Branch Recipient Management и добавляем в нее группу Администраторов филиала.
После этого Администраторы филиалов заходят по адресу https://ex/ecp вводят свои учетные данные и работают с ящиками пользователей.
Комментариев нет:
Отправить комментарий