Как настроить аудит (журналирование доступа и изменений) для общедоступных папок в Microsoft Exchange?

Добрый день. У меня вопрос по аудиту: с общими почтовыми ящиками всё примерно ясно — я включил аудит на ящик и настроил, какие действия и за кем записывать. <br/> Однако есть общедоступные папки, у некоторых из которых есть «почтовые ящики». Как настроить аудит для таких объектов, например, чтобы фиксировалось удаление письма? Стандартные команды аудита для общих почтовых ящиков не работают — консоль сообщает, что таких почтовых ящиков не знает.
  • 25 июня 2026 г. 16:01
Ответы на вопрос 2
Коротко — «общедоступная папка» сама по себе не объект аудита. Контент общих папок хранится в так называемых public folder mailboxes, и аудит нужно включать именно на этих почтовых ящиках (или пользоваться унифицированным аудитом в Microsoft 365). Тот факт, что вы в консоли видите «общую папку», а не почтовый ящик — типичная причина ошибок «таких почтовых ящиков не знает».

Ниже — что проверить и как действовать (вариант зависит от того, у вас Exchange Online / Microsoft 365 или on‑prem Exchange — укажите версию, если нужно точнее).

1) Найти public folder mailboxes
- PowerShell на Exchange / EXO:
  Get-Mailbox -PublicFolder
  Это вернёт список public folder mailboxes. Именно их использовать в командах Set-Mailbox / Search-MailboxAuditLog и т.д.

2) Exchange Online (Microsoft 365)
- В EXO public folder mailbox можно включить mailbox audit и логирование операций (удаление, перемещение и т. п.). Пример:
  - Просмотр:
    Get-Mailbox -PublicFolder | Format-Table Name,PrimarySmtpAddress
  - Включить аудит:
    Set-Mailbox -Identity "<PFMailboxName>" -AuditEnabled $true -AuditLogAgeLimit 90.00:00:00
  - Указать операции, которые нужно логировать (owner/delegate/admin):
    Set-Mailbox -Identity "<PFMailboxName>" -AuditOwner @{Add="Update","MoveToDeletedItems","SoftDelete","HardDelete"} -AuditDelegate @{Add="Update","MoveToDeletedItems","SoftDelete","HardDelete"} -AuditAdmin @{Add="Update","MoveToDeletedItems","SoftDelete","HardDelete"}
  - Поиск в журналах:
    Search-MailboxAuditLog -Identity "<PFMailboxName>" -LogonTypes Owner,Delegate,Admin -StartDate (Get-Date).AddDays(-30) -ShowDetails | Where-Object {$_.Operation -in @("HardDelete","SoftDelete","MoveToDeletedItems")}
  - Либо пользоваться Unified Audit Log (Security & Compliance) и Search-UnifiedAuditLog с операциями типа HardDelete/SoftDelete/MoveToDeletedItems.

- Замечание: в Microsoft 365 иногда удобнее искать по унифицированному аудиту (т.к. центральный лог включает много операций). Убедитесь, что унифицированный аудит включён в tenant.

3) Exchange on‑premises
- Возможности зависят от версии. В большинстве on‑prem версий mailbox audit поддерживается для user/shared/resource mailboxes, но public folder mailboxes могли иметь ограниченную/отсутствующую поддержку аудит-логирования. Поэтому:
  - Сначала попробуйте команды из пункта 1/2 на контролируемом сервере — если Get-Mailbox -PublicFolder ничего не возвращает или Set-Mailbox не поддерживает Audit для этих типов, значит native аудит удалений в public folders не реализован в вашей версии.
  - Административные изменения (создание/удаление папки, изменение прав) фиксируются в Admin Audit Log (включается отдельно).
  - Доставку сообщений в public folder можно увидеть в message tracking logs, но операции удаления элементов пользователями там не отражаются.
  - При отсутствии встроенного аудита на public folder mailbox остаётся: сторонние решения (SIEM/трекеры), регулярная резервная копия/версионирование или миграция в Exchange Online для получения унифицированного аудита.

4) Частые ошибки и их причины
- Вы пытаетесь включить аудит на уровне «папки» (путь типа \Public Folders\...) — PowerShell ожидает объект mailbox, поэтому «не знает» такого почтового ящика.
- Нет прав администратора для управления public folder mailboxes.
- Вы на on‑prem версии, где mailbox audit для public folder mailboxes не поддерживается.

5) Рекомендации
- Сначала скажите, какая у вас среда: Exchange Online (Microsoft 365) или on‑premises — и если on‑prem, то точная версия (2013/2016/2019 и CU). Я пришлю точные команды и подскажу, что реально можно получить для вашей версии.
- Если нужно записывать удаление писем для расследований в короткие сроки — лучший путь в большинстве случаев: включить аудит на public folder mailbox (если поддерживается) или перенести активные public folders в EXO, где есть унифицированный аудит.

Если скажете, где у вас Exchange (Online / on‑prem + версия), дам точную пошаговую инструкцию с командами и примером поиска записей об удалении.
<a href="https://learn.microsoft.com/en-us/exchange/faq-public-folders-exchange-2013-help" rel="nofollow">журнал "Здоровье"</a> , например, про Exchange 2013 Public Folders пишет следующее: <br/> <blockquote>Does mailbox audit logging work against public folders?<br/>
No. Not at this time.</blockquote> <br/> Вы бы уточнили используемую версию Exchange и какие команды вы пытались использовать... <br/> <br/> Сможете показать что возвращают команды? <br/> <pre><code class="vbscript"># Mailbox View
Get-Mailbox -PublicFolder -ResultSize Unlimited

Set-Mailbox -PublicFolder -Identity "YourPFMbx" -AuditEnabled $true
Set-Mailbox -PublicFolder -Identity "YourPFMbx" -AuditDelegate @{Add="HardDelete"} -AuditOwner @{Add="Update","SoftDelete","HardDelete"}

# Public Folder View
Get-PublicFolder -ResultSize Unlimited
Get-MailPublicFolder -ResultSize Unlimited</code></pre>
Похожие вопросы