Search-UnifiedAuditLog

Este cmdlet solo está disponible en el servicio basado en la nube.

Use el cmdlet Search-UnifiedAuditLog para buscar el registro de auditoría unificado. Este registro contiene eventos de Exchange Online, SharePoint Online, OneDrive para la Empresa, Azure Active Directory, Microsoft Teams, Power BI y otros servicios Microsoft 365. Puede buscar todos los eventos de un intervalo de fechas especificado o filtrar los resultados según criterios específicos, como el usuario que realizó la acción, la acción o el objeto de destino.

Para obtener más información acerca de los conjuntos de parámetros de la sección Sintaxis a continuación, vea Sintaxis del cmdlet de Exchange.

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

El cmdlet Search-UnifiedAuditLog presenta páginas de datos basadas en iteraciones repetidas del mismo comando. Use SessionId y SessionCommand para llamar al cmdlet repetidamente hasta que obtenga cero devoluciones o alcance el número máximo de resultados basados en el comando de la sesión. Para medir el progreso, examine las propiedades ResultIndex (aciertos en la iteración actual) y ResultCount (aciertos para todas las iteraciones) de los datos devueltos por el cmdlet.

El cmdlet Search-UnifiedAuditLog está disponible en Exchange Online PowerShell. También puede ver eventos desde el registro de auditoría unificado mediante el portal de cumplimiento Microsoft Purview. Para obtener más información, vea Actividades auditadas.

Si desea descargar mediante programación datos del registro de auditoría de Microsoft 365, se recomienda usar la API de actividad de administración de Microsoft 365 en lugar de usar el cmdlet Search-UnifiedAuditLog en un script de PowerShell. La API de actividad de administración de Microsoft 365 es un servicio web REST que puede usar para desarrollar soluciones de operaciones, seguridad y supervisión de cumplimiento para su organización. Para obtener más información, consulte Referencia de la API de actividad de administración.

Este cmdlet está disponible en Office 365 operado por 21Vianet, pero no devolverá ningún resultado.

El parámetro OutVariable acepta objetos de tipo ArrayList. Este es un ejemplo de cómo usarlo:

$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

Deberá tener asignados permisos antes de poder ejecutar este cmdlet. Aunque en este tema se enumeran todos los parámetros correspondientes a este cmdlet, tal vez no tenga acceso a algunos parámetros si no están incluidos en los permisos que se le han asignado. Para obtener los permisos necesarios para ejecutar cualquier cmdlet o parámetro en su organización, consulte Find the permissions required to run any Exchange cmdlet.

Ejemplos

Ejemplo 1

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

En este ejemplo se busca en el registro de auditoría unificado todos los eventos del 1 de mayo de 201812:00 a.m. al 2 de mayo de 2018 a las 12:00 a.m.

Nota: Si no incluye una marca de tiempo en el valor de los parámetros StartDate o EndDate, se usa la marca de tiempo predeterminada 12:00 AM (medianoche).

Ejemplo 2

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

En este ejemplo se busca en el registro de auditoría unificado todos los eventos de administración de Exchange de 8:00 a.m. a 6:00 p.m. del 1 de junio de 2018.

Nota Si usa la misma fecha para los parámetros StartDate y EndDate, debe incluir una marca de tiempo; De lo contrario, no se devolverá ningún resultado porque la fecha y hora de las fechas de inicio y finalización serán las mismas.

Ejemplo 3

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

En este ejemplo se busca en el registro de auditoría unificado todos los eventos del 1 de mayo de 2018 al 8 de mayo de 2018. Si no incluye una marca de tiempo en los parámetros StartDate o EndDate, los datos se devuelven en las páginas, ya que el comando se vuelve a ejecutar secuencialmente mientras se usa el mismo valor SessionId.

Nota: Usar siempre el mismo valor SessionCommand para un determinado valor SessionId. No cambiar entre ReturnLargeSet y ReturnNextPreviewPage para el mismo identificador de sesión. De lo contrario, la salida está limitada a 10 000 resultados.

Ejemplo 4

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

En este ejemplo se busca en el registro de auditoría unificado los archivos a los que se accede en SharePoint Online del 1 de mayo de 2018 al 8 de mayo de 2018. Los datos se devuelven en páginas, ya que el comando se vuelve a ejecutar secuencialmente mientras usa el mismo valor SessionId.

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

En este ejemplo se busca en el registro de auditoría unificado del 1 de mayo de 2018 al 8 de mayo de 2018 todos los eventos relacionados con un documento específico de Word identificado por su valor ObjectIDs.

Parámetros

-EndDate

El parámetro EndDate especifica la fecha de finalización del intervalo de fechas. Las entradas se almacenan en el registro de auditoría unificado en la hora universal coordinada (UTC). Si especifica un valor de fecha y hora sin una zona horaria, el valor está en UTC.

Para especificar un valor de fecha y hora para este parámetro, use una de las siguientes opciones:

  • Especifique el valor de fecha y hora en UTC: por ejemplo, "2018-05-06 14:30:00z".
  • Especifique el valor de fecha y hora como una fórmula que convierta la fecha y hora de la zona horaria local en UTC: por ejemplo, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime(). Para obtener más información, vea Get-Date.

Si no incluye una marca de tiempo en el valor de este parámetro, la marca de tiempo predeterminada es a las 12:00 (medianoche) en la fecha 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

El modificador Con formato hace que los atributos que normalmente se devuelven como enteros (por ejemplo, RecordType y Operation) se formatee como cadenas descriptivas. No es necesario especificar un valor con este modificador.

Además, este modificador hace que AuditData sea más legible.

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

El parámetro FreeText filtra las entradas de registro por la cadena de texto especificada. Si el valor contiene espacios, escriba el valor entre comillas (").

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

El parámetro IPAddresses filtra las entradas de registro por las direcciones IP especificadas. Especifique varias direcciones IP separadas por comas.

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

El parámetro ObjectIds filtra las entradas de registro por identificador de objeto. El identificador de objeto es el objeto de destino sobre el que actuó, y depende de los valores RecordType y Operations del evento. Por ejemplo, para las operaciones de SharePoint, el identificador de objeto es la ruta de acceso url a un archivo, carpeta o sitio. En el caso de las operaciones de Azure Active Directory, el identificador de objeto es el nombre de cuenta o el valor GUID de la cuenta.

El valor ObjectId aparece en la propiedad AuditData (también conocida como Detalles) del evento.

Update Si los valores contienen espacios o necesitan comillas, use la siguiente sintaxis: "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

El parámetro Operations filtra las entradas de registro por operación. Los valores disponibles para este parámetro dependen del valor RecordType. Para obtener una lista de los valores disponibles para este parámetro, consulte Actividades auditadas.

Update Si los valores contienen espacios o necesitan comillas, use la siguiente sintaxis: "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

El parámetro RecordType filtra las entradas de registro por tipo de registro. Para obtener más información sobre los valores disponibles, vea 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

El parámetro ResultSize especifica el número máximo de resultados que se van a devolver. El valor predeterminado es 100, mientras que el valor máximo es 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

El parámetro SessionCommand especifica cuánta información se devuelve y cómo se organiza. Los valores admitidos son:

  • ReturnLargeSet: este valor hace que el cmdlet devuelva datos no ordenados. Mediante el uso de la paginación, puede tener acceso a un máximo de 50 000 resultados. Este es el valor recomendado si no se requiere un resultado ordenado y se ha optimizado para la latencia de búsqueda.
  • ReturnNextPreviewPage: este valor hace que el cmdlet devuelva datos ordenados por fecha. El número máximo de registros devueltos a través del uso de la paginación o del parámetro ResultSize es de 5000.

Nota: Usar siempre el mismo valor SessionCommand para un determinado valor SessionId. No cambiar entre ReturnLargeSet y ReturnNextPreviewPage para el mismo identificador de sesión. De lo contrario, la salida está 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

El parámetro SessionId especifica un identificador que proporciona en forma de una cadena para identificar un comando (el cmdlet y sus parámetros) que se ejecutará varias veces para devolver los datos paginados. El SessionId puede ser cualquier valor de cadena que elija.

Cuando el cmdlet se ejecuta secuencialmente con el mismo identificador de sesión, el cmdlet devolverá los datos en bloques secuenciales del tamaño especificado por ResultSize.

Para un identificador de sesión dado, si usa el valor SessionCommandReturnLargeSet, y, a continuación, usa el valor SessionCommandReturnNextPreviewPage, los resultados se limitan a 10.000 registros. Para tener todos los registros de 50.000 disponibles, use siempre el valor ReturnLargeSet cada vez que ejecute el cmdlet para el mismo identificador de sesión.

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

El parámetro SiteIds filtra las entradas de registro por el SiteId (GUID) de SharePoint. Puede escribir varios valores separados por comas: Value1, Value2,...ValueN.

Para obtener el SiteId de un sitio de SharePoint, anexe /_api/site/id a la dirección URL de la colección de sitios que desea especificar. Por ejemplo, cambie la dirección URL https://contoso.sharepoint.com/sites/hr-project a https://contoso.sharepoint.com/sites/hr-project/_api/site/id. Se devuelve una carga XML y el SiteId de la colección de sitios se muestra en la propiedad Edm.Guid; por ejemplo: <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

El parámetro StartDate especifica la fecha de inicio del intervalo de fechas. Las entradas se almacenan en el registro de auditoría unificado en la hora universal coordinada (UTC). Si especifica un valor de fecha y hora sin una zona horaria, el valor está en UTC.

Para especificar un valor de fecha y hora para este parámetro, use una de las siguientes opciones:

  • Especifique el valor de fecha y hora en UTC: por ejemplo, "2018-05-06 14:30:00z".
  • Especifique el valor de fecha y hora como una fórmula que convierta la fecha y hora de la zona horaria local en UTC: por ejemplo, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime(). Para obtener más información, vea Get-Date.

Si no incluye una marca de tiempo en el valor de este parámetro, la marca de tiempo predeterminada es a las 12:00 (medianoche) en la fecha 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

El parámetro UserIds filtra las entradas de registro por la cuenta (UserPrincipalName) del usuario que realizó la acción. Por ejemplo, laura@contoso.onmicrosoft.com.

Update Si los valores contienen espacios o necesitan comillas, use la siguiente sintaxis: "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