Поделиться через


Search-UnifiedAuditLog

Этот командлет доступен только в облачной службе.

Используйте командлет Search-UnifiedAuditLog для поиска в едином журнале аудита. Этот журнал содержит события из Exchange Online, SharePoint Online, OneDrive для бизнеса, Azure Active Directory, Майкрософт Teams, Power BI и других служб Майкрософт 365. Можно выполнить поиск всех событий в указанном диапазоне дат или отфильтровать результаты по определенным критериям, таким как пользователь, выполнивший действие, действие или целевой объект.

Сведения о наборах параметров в разделе Синтаксис ниже см. В разделе Синтаксис командлета Exchange.

Синтаксис

Search-UnifiedAuditLog
      -EndDate <ExDateTime>
      -StartDate <ExDateTime>
      [-Formatted]
      [-FreeText <String>]
      [-IPAddresses <String[]>]
      [-ObjectIds <String[]>]
      [-Operations <String[]>]
      [-RecordType <AuditRecordType>]
      [-ResultSize <Int32>]
      [-SessionCommand <UnifiedAuditSessionCommand>]
      [-SessionId <String>]
      [-SiteIds <String[]>]
      [-UserIds <String[]>]
      [<CommonParameters>]

Описание

Командлет Search-UnifiedAuditLog представляет страницы данных на основе повторяемых итераций одной и той же команды. Используйте SessionId и SessionCommand для многократного выполнения командлета, пока не получите нулевой возврат или не достигнете максимального количества результатов на основе команды сеанса. Чтобы оценить ход выполнения, просмотрите свойства ResultIndex (попадания в текущей итерации) и ResultCount (попадания для всех итераций) данных, возвращаемых командлетом .

Командлет Search-UnifiedAuditLog доступен в Exchange Online PowerShell. Вы также можете просматривать события из единого журнала аудита с помощью Портал соответствия требованиям Microsoft Purview. Дополнительные сведения см. в разделе Проверенные действия.

Если вы хотите программно скачать данные из журнала аудита Майкрософт 365, рекомендуется использовать API действий управления Майкрософт 365 вместо командлета Search-UnifiedAuditLog в скрипте PowerShell. API действий управления Майкрософт 365 — это веб-служба REST, которую можно использовать для разработки решений для мониторинга операций, безопасности и соответствия требованиям для вашей организации. Дополнительные сведения см. в статье Справочник по API действий управления.

Этот командлет доступен в Office 365, выполняемых 21Vianet, но не возвращает никаких результатов.

Параметр OutVariable принимает объекты типа ArrayList. Ниже приведен пример его использования:

$start = (Get-Date).AddDays(-1); $end = (Get-Date).AddDays(-0.5); $auditData = New-Object System.Collections.ArrayList; Search-UnifiedAuditLog -StartDate $start -EndDate $end -OutVariable +auditData | Out-Null

Для его запуска необходимо получить соответствующие разрешения. В этой статье перечислены все параметры командлета. Но некоторые из них могут быть вам не доступны, если они не включены в назначенные разрешения. Сведения о необходимых разрешениях для запуска командлетов и использования параметров в организации см. в статье Find the permissions required to run any Exchange cmdlet.

Примеры

Пример 1

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/2/2018

В этом примере выполняется поиск в едином журнале аудита для всех событий с 1 мая 201812:00 по 2 мая 2018 г. 12:00.

Примечание. Если не включить метку времени в значение параметров StartDate или EndDate, используется метка времени по умолчанию 12:00 (полночь).

Пример 2

Search-UnifiedAuditLog -StartDate "6/1/2018 8:00 AM" -EndDate "6/1/2018 6:00 PM" -RecordType ExchangeAdmin

В этом примере выполняется поиск в едином журнале аудита для всех событий администрирования Exchange с 8:00 до 18:00 1 июня 2018 г.

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

Пример 3

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -SessionId "UnifiedAuditLogSearch 05/08/17" -SessionCommand ReturnLargeSet

В этом примере выполняется поиск в едином журнале аудита для всех событий с 1 мая 2018 г. по 8 мая 2018 г. Если не включить метку времени в параметры StartDate или EndDate, данные возвращаются на страницах при последовательном выполнении команды с использованием того же значения SessionId.

Примечание. Всегда используйте одно и то же значение SessionCommand для заданного значения SessionId. Не переключайтесь между ReturnLargeSet и ReturnNextPreviewPage для одного и того же идентификатора сеанса. В противном случае выходные данные ограничены 10 000 результатами.

Пример 4

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -RecordType SharePointFileOperation -Operations FileAccessed -SessionId "WordDocs_SharepointViews"-SessionCommand ReturnLargeSet

В этом примере выполняется поиск в едином журнале аудита для всех файлов, доступных в SharePoint Online с 1 мая 2018 г. по 8 мая 2018 г. Данные возвращаются на страницах при последовательном выполнении команды с использованием того же значения SessionId.

Пример 5

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -ObjectIDs "https://alpinehouse.sharepoint.com/sites/contoso/Departments/SM/International/Shared Documents/Sales Invoice - International.docx"

В этом примере выполняется поиск в едином журнале аудита с 1 мая 2018 г. по 8 мая 2018 г. на наличие всех событий, связанных с определенным документом Word, определяемым по его значению ObjectID.

Параметры

-EndDate

Параметр EndDate указывает дату окончания из диапазона дат. Записи хранятся в едином журнале аудита в формате UTC. Если указать значение даты и времени без часового пояса, значение будет в формате UTC.

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

  • Укажите значение даты и времени в формате UTC: например, "2018-05-06 14:30:00z".
  • Укажите значение даты и времени в качестве формулы, которая преобразует дату и время в местном часовом поясе в utc: например. (Get-Date "5/6/2018 9:30 AM").ToUniversalTime() Для получения дополнительной информации см. Get-Date.

Если не включить метку времени в значение этого параметра, метка времени по умолчанию — 12:00 (полночь) в указанную дату.

Type:ExDateTime
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-Formatted

Параметр Formatted приводит к тому, что атрибуты, которые обычно возвращаются в виде целых чисел (например, RecordType и Operation), будут отформатированы как описательные строки. Для этого переключателя не требуется указывать значение.

Кроме того, этот параметр делает AuditData более удобочитаемым.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-FreeText

Параметр FreeText фильтрует записи журнала по указанной текстовой строке. Если значение содержит пробелы, его необходимо заключить в кавычки (").

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-IPAddresses

Параметр IPAddresses фильтрует записи журнала по указанным IP-адресам. Вы указываете несколько IP-адресов, разделенных запятыми.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-ObjectIds

Параметр ObjectIds фильтрует записи журнала по идентификатору объекта. Идентификатор объекта — это целевой объект, с которым было выполнено действие, и зависит от значений RecordType и Operations события. Например, для операций SharePoint идентификатор объекта — это URL-путь к файлу, папке или сайту. Для операций Azure Active Directory идентификатор объекта — это имя учетной записи или значение GUID учетной записи.

Значение ObjectId отображается в свойстве AuditData (также известное как Details) события.

Update Если значения содержат пробелы или иным образом требуют кавычек, используйте следующий синтаксис: "Value1","Value2",..."ValueN".

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-Operations

Параметр Operations фильтрует записи журнала по операциям. Доступные значения для этого параметра зависят от значения RecordType. Список доступных значений для этого параметра см. в разделе Действия аудита.

Update Если значения содержат пробелы или иным образом требуют кавычек, используйте следующий синтаксис: "Value1","Value2",..."ValueN".

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-RecordType

Параметр RecordType фильтрует записи журнала по типу записи. Дополнительные сведения о доступных значениях см. в разделе AuditLogRecordType.

Type:AuditRecordType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-ResultSize

Параметр ResultSize указывает максимальное число возвращаемых результатов. Значение по умолчанию — 100, максимальное — 5000.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-SessionCommand

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

  • ReturnLargeSet. Это значение приводит к тому, что командлет возвращает несортированные данные. С помощью разбиения по страницам можно получить доступ к не более чем 50 000 результатов. Это рекомендуемое значение, если упорядоченный результат не требуется и оптимизирован для задержки поиска.
  • ReturnNextPreviewPage: это значение заставляет командлет возвращать данные, отсортированные по дате. Максимальное число записей, возвращаемых при использовании разбиения на разбиение по страницам или параметрОм ResultSize, составляет 5000 записей.

Примечание. Всегда используйте одно и то же значение SessionCommand для заданного значения SessionId. Не переключайтесь между ReturnLargeSet и ReturnNextPreviewPage для одного и того же идентификатора сеанса. В противном случае выходные данные ограничены 10 000 результатами.

Type:UnifiedAuditSessionCommand
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-SessionId

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

При последовательном выполнении командлета с тем же идентификатором сеанса командлет вернет данные в последовательных блоках размера, указанного в ResultSize.

Если для заданного идентификатора сеанса используется значение SessionCommand ReturnLargeSet, а затем используется значение SessionCommand ReturnNextPreviewPage, результаты будут ограничены 10 000 записей. Чтобы было доступно все 50 000 записей, всегда используйте значение ReturnLargeSet при каждом запуске командлета для одного и того же идентификатора сеанса.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-SiteIds

Параметр SiteIds фильтрует записи журнала по Идентификатору сайта SharePoint (GUID). Можно ввести несколько значений, разделенных запятыми: Value1, Value2,...ValueN.

Чтобы получить SiteId для сайта SharePoint, добавьте /_api/site/id к URL-адресу семейства веб-сайтов, которое вы хотите указать. Например, измените URL-адрес https://contoso.sharepoint.com/sites/hr-project на https://contoso.sharepoint.com/sites/hr-project/_api/site/id. Возвращается полезные данные XML, а siteId для семейства веб-сайтов отображается в свойстве Edm.Guid; например: <d:Id xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:type="Edm.Guid">14ab81b6-f23d-476a-8cac-ad5dbd2910f7</d:Id>.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-StartDate

Параметр StartDate указывает дату начала из диапазона дат. Записи хранятся в едином журнале аудита в формате UTC. Если указать значение даты и времени без часового пояса, значение будет в формате UTC.

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

  • Укажите значение даты и времени в формате UTC: например, "2018-05-06 14:30:00z".
  • Укажите значение даты и времени в качестве формулы, которая преобразует дату и время в местном часовом поясе в utc: например. (Get-Date "5/6/2018 9:30 AM").ToUniversalTime() Для получения дополнительной информации см. Get-Date.

Если не включить метку времени в значение этого параметра, метка времени по умолчанию — 12:00 (полночь) в указанную дату.

Type:ExDateTime
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-UserIds

Параметр UserIds фильтрует записи журнала по учетной записи (UserPrincipalName) пользователя, выполнившего действие. Например, laura@contoso.onmicrosoft.com.

Update Если значения содержат пробелы или иным образом требуют кавычек, используйте следующий синтаксис: "Value1","Value2",..."ValueN".

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection