Найти тему
404

Права доступа к ящику Exchange с помощью PowerShell

Для предоставления полного доступа к общему ящику, чтобы пользователи могли видеть его содержимое и отправлять письма, нужно предоставить права Full Access и Send As.

Данная команда предоставит полные права на ящик mailbox для пользователя username и разрешит автоматическое подключение ящика в Outlook:

Add-MailboxPermission -Identity mailbox@dn-srv.ru -User username@dn-srv.ru -AccessRights FullAccess -AutoMapping:$true -InheritanceType All

Следующая PowerShell команда используется для предоставления прав на отправку писем:

Add-RecipientPermission mailbox@dn-srv.ru -AccessRights SendAs -Trustee username@dn-srv.ru

Чтобы предоставить право SendOnBehalf, выполните:

Get-Mailbox mailbox@dn-srv.ru | Set-Mailbox -GrantSendOnBehalfTo username@dn-srv.ru

Можно предоставить права сразу нескольким пользователям. Например, назначим пользователю права SendAs на все ящики из определенного отдела:

Get-Recipient -Filter {(Department -eq "ИТ")} | Add-RecipientPermission -AccessRights SendAs –Trustee username@dn-srv.ru

Или предоставим полные права на общий ящик для всех членов определённой группы рассылки:

$Members = Get-DistributionGroupMember -id IT-support
ForEach ($Member in $Members)
{
Add-RecipientPermission John -AccessRights SendAs –Trustee $Member.name
Add-MailboxPermission -Identity IT-support@dn-srv.ru -User $Member.name -AccessRights FullAccess -AutoMapping:$true -InheritanceType All
}

Вывести список пользователей, у которых есть полные права на почтовый ящик:

get-mailboxpermission -identity username@dn-srv.ru | ft -AutoSize

Получить полный отчет со списком пользователей, у которых есть права FullAccess на любые другие ящики в Exchange:

Get-Mailbox | Get-MailboxPermission | where {($_.AccessRights -like 'Full*') -and ($_.User -notlike "nt authority\self")} | Format-Table -Auto User,Deny,IsInherited,AccessRights

Отчет по правам SendOnBehalf:

Get-Mailbox –ResultSize Unlimited | Where {$_.GrantSendOnBehalfTo -ne $null} | Select UserprincipalName,GrantSendOnBehalfTo

Вывести список пользователей с правами SendAs на ящике:

Get-RecipientPermission mailbox@dn-srv.ru

Вывести пользователей организации, на которых есть права SendAs у указанного пользователя:

Get-Recipient | Get-RecipientPermission -Trustee user@dn-srv.ru | Select Identity, Trustee, AccessRights

Удалить для пользователя права SendAs на все ящики в организации:

Get-Recipient | Remove-RecipientPermission -AccessRights SendAs –Trustee user@dn-srv.ru

Лишить пользователя доступа к почтовому ящику:

Remove-MailboxPermission -identity mailbox@dn-srv.ru -accessrights:fullaccess -user user@dn-srv.ru