Search-UnifiedAuditLog

Esse cmdlet só está disponível no serviço baseado em nuvem.

Use o cmdlet Search-UnifiedAuditLog para pesquisar o log de auditoria unificado. Este log contém eventos de Exchange Online, SharePoint Online, OneDrive for Business, Azure Active Directory, Microsoft Teams, Power BI e outros serviços Microsoft 365. Você pode pesquisar todos os eventos em um intervalo de datas especificado ou filtrar os resultados com base em critérios específicos, como o usuário que realizou a ação, a ação ou o objeto de destino.

Para saber mais sobre os conjuntos de parâmetros na seção Sintaxe, abaixo, consulte Exchange cmdlet syntax.

Syntax

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>]

Description

O cmdlet Search-UnifiedAuditLog apresenta as páginas de dados com base em iterações repetidas do mesmo comando. Use o SessionId e o SessionCommand para executar o cmdlet repetidamente até que você obtenha zero retornos ou atinja o número máximo de resultados com base no comando da sessão. Para medir o progresso, examine as propriedades ResultIndex (hits na iteração atual) e ResultCount (hits para todas as iterações) dos dados retornados pelo cmdlet.

O cmdlet Search-UnifiedAuditLog está disponível no Exchange Online PowerShell. Você também pode exibir eventos do log de auditoria unificado usando o portal de conformidade do Microsoft Purview. Para obter mais informações, confira Atividades auditadas.

Se você quiser baixar dados programaticamente do log de auditoria do Microsoft 365, é recomendável usar a API de Atividade de Gerenciamento do Microsoft 365 em vez de usar o cmdlet Search-UnifiedAuditLog em um script do PowerShell. A API de Atividade de Gerenciamento do Microsoft 365 é um serviço Web REST que você pode usar para desenvolver operações, segurança e soluções de monitoramento de conformidade para sua organização. Para obter mais informações, consulte Referência de API de Atividade de Gerenciamento.

Esse cmdlet está disponível em Office 365 operado pela 21Vianet, mas não retornará nenhum resultado.

O parâmetro OutVariable aceita objetos do tipo ArrayList. Aqui está um exemplo de como usá-lo:

$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

Para executar esse cmdlet, você precisa ter permissões. Embora este tópico liste todos os parâmetros do cmdlet, talvez você não tenha acesso a alguns parâmetros se eles não estiverem incluídos nas permissões atribuídas a você. Para localizar as permissões necessárias para executar qualquer cmdlet ou parâmetro em sua organização, confira Find the permissions required to run any Exchange cmdlet.

Exemplos

Exemplo 1

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

Este exemplo pesquisa o log de auditoria unificado para todos os eventos de 1º de maio de 201812:00am até 2 de maio de 2018 12:00 AM.

Observação: se você não incluir um carimbo de data/hora no valor para os parâmetros StartDate ou EndDate, o carimbo de data/hora padrão 12:00 AM (meia-noite) será usado.

Exemplo 2

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

Este exemplo pesquisa o log de auditoria unificado para todos os eventos de administrador do Exchange das 8h às 18h de 1º de junho de 2018.

Nota Se você usar a mesma data para os parâmetros StartDate e EndDate, precisará incluir um carimbo de data/hora; caso contrário, nenhum resultado será retornado porque a data e a hora das datas de início e término serão as mesmas.

Exemplo 3

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

Este exemplo pesquisa o log de auditoria unificado para todos os eventos de 1º de maio de 2018 a 8 de maio de 2018. Se você não incluir um carimbo de tempo nos parâmetros StartDate ou EndDate, os dados serão retornados em páginas, pois o comando é executado sequencialmente ao usar o mesmo valor SessionId.

Observação: Use sempre o mesmo valor de SessionCommand para um determinado valor de SessionId. Não alterne entre ReturnLargeSet e ReturnNextPreviewPage para a mesma ID de sessão. Caso contrário, a saída será limitada a 10.000 resultados.

Exemplo 4

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

Este exemplo pesquisa o log de auditoria unificado para quaisquer arquivos acessados no SharePoint Online de 1º de maio de 2018 a 8 de maio de 2018. O sistema retorna os dados em páginas conforme o comando é executado novamente de forma sequencial, usando o mesmo valor SessionId.

Exemplo 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"

Este exemplo pesquisa o log de auditoria unificado de 1º de maio de 2018 a 8 de maio de 2018 para todos os eventos relacionados a um documento específico do Word identificado pelo valor ObjectIDs.

Parâmetros

-EndDate

O parâmetro EndDate especifica a data de término do intervalo de datas. As entradas são armazenadas no log de auditoria unificado em UTC (Tempo Universal Coordenado). Se você especificar um valor de data/hora sem um fuso horário, o valor estará em UTC.

Para especificar um valor de data/hora para este parâmetro, use uma das opções a seguir:

  • Especifique o valor de data/hora em UTC: por exemplo, "2018-05-06 14:30:00z".
  • Especifique o valor de data/hora como uma fórmula que converte a data/hora no fuso horário local em UTC: Por exemplo, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime(). Para mais informações, consulte Get-Date.

Se você não incluir um carimbo de data/hora no valor desse parâmetro, o carimbo de data/hora padrão será 12:00 (meia-noite) na data especificada.

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

A opção Formatada faz com que atributos normalmente retornados como inteiros (por exemplo, RecordType e Operation) sejam formatados como cadeias de caracteres descritivas. Não é preciso especificar um valor com essa opção.

Além disso, essa opção torna AuditData mais legível.

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

O parâmetro FreeText filtra as entradas de log pela cadeia de texto especificada. Se o valor contiver espaços, coloque-o entre aspas (").

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

O parâmetro IPAddresses filtra as entradas de log pelos endereços IP especificados. Você especifica vários endereços IP separados por vírgulas.

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

O parâmetro ObjectIds filtra as entradas do log pela ID do objeto. A ID do objeto é o objeto de destino que foi tratado e depende dos valores RecordType e Operations do evento. Por exemplo, para operações do SharePoint, a ID do objeto é o caminho da URL para um arquivo, pasta ou site. Para operações do Azure Active Directory, a ID do objeto é o nome da conta ou o valor GUID da conta.

O valor ObjectId é exibido na propriedade AuditData (também conhecida como Details) do evento.

Update Se os valores contiverem espaços ou exigirem aspas, use a seguinte sintaxe: "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

O parâmetro Operations filtra as entradas do log por operação. Os valores disponíveis para esse parâmetro dependem do valor RecordType. Para obter uma lista dos valores disponíveis para este parâmetro, consulte Atividades auditadas.

Update Se os valores contiverem espaços ou exigirem aspas, use a seguinte sintaxe: "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

O parâmetro RecordType filtra as entradas do log por tipo de registro. Para obter detalhes sobre os valores disponíveis, consulte 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

O parâmetro ResultSize especifica o número máximo de resultados a serem retornados. O valor padrão é de 100 e o máximo é de 5.000.

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

O parâmetro SessionCommand especifica quantas informações são retornadas e como elas são organizadas. Os valores válidos são:

  • ReturnLargeSet: esse valor faz com que o cmdlet retorne dados não variados. Você pode ter acesso a no máximo 50.000 resultados usando a paginação. Esse é o valor recomendado se um resultado ordenado não for necessário e tiver sido otimizado para latência de pesquisa.
  • ReturnNextPreviewPage: esse valor faz com que o cmdlet retorne os dados classificados na data. O número máximo de registros retornados por meio do uso da paginação ou do parâmetro ResultSize é de 5.000.

Observação: Use sempre o mesmo valor de SessionCommand para um determinado valor de SessionId. Não alterne entre ReturnLargeSet e ReturnNextPreviewPage para a mesma ID de sessão. Caso contrário, a saída será limitada a 10.000 resultados.

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

O parâmetro SessionId especifica uma ID fornecida como uma cadeia de caracteres para identificar um comando (o cmdlet e os respectivos parâmetros) que será executado várias vezes a fim de retornar dados paginados. O parâmetro SessionId pode ser um valor de cadeia de caracteres à escolha.

Quando o cmdlet for executado sequencialmente com a mesma ID de sessão, o cmdlet retornará os dados em blocos sequenciais do tamanho especificado pelo ResultSize.

Para uma determinada ID de sessão, se você usar o valor ReturnLargeSet do SessionCommand e, em seguida, usar o valor ReturnNextPreviewPage do SessionCommand, os resultados serão limitados a 10.000 registros. Para obter todos os 50.000 registros disponíveis, use sempre o valor ReturnLargeSet cada vez que executar o cmdlet para a mesma ID de sessão.

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

O parâmetro SiteIds filtra as entradas de log pelo SiteId do SharePoint (GUID). Você pode inserir vários valores separados por vírgulas: Value1, Value2,...ValueN.

Para obter o SiteId de um site do SharePoint, adicione /_api/site/id à URL da coleção de sites que você deseja especificar. Por exemplo, altere a URL https://contoso.sharepoint.com/sites/hr-project para https://contoso.sharepoint.com/sites/hr-project/_api/site/id. Uma carga XML é retornada e o SiteId para a coleção de sites é exibido na propriedade Edm.Guid; por exemplo: <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

O parâmetro StartDate especifica a data de início do intervalo de datas. As entradas são armazenadas no log de auditoria unificado em UTC (Tempo Universal Coordenado). Se você especificar um valor de data/hora sem um fuso horário, o valor estará em UTC.

Para especificar um valor de data/hora para este parâmetro, use uma das opções a seguir:

  • Especifique o valor de data/hora em UTC: por exemplo, "2018-05-06 14:30:00z".
  • Especifique o valor de data/hora como uma fórmula que converte a data/hora no fuso horário local em UTC: Por exemplo, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime(). Para mais informações, consulte Get-Date.

Se você não incluir um carimbo de data/hora no valor desse parâmetro, o carimbo de data/hora padrão será 12:00 (meia-noite) na data especificada.

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

O parâmetro UserIds filtra as entradas de log pela conta (UserPrincipalName) do usuário que realizou a ação. Por exemplo, laura@contoso.onmicrosoft.com.

Update Se os valores contiverem espaços ou exigirem aspas, use a seguinte sintaxe: "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