Investigación de actividades mediante la API

Puede usar las API de actividades para investigar las actividades realizadas por los usuarios en las aplicaciones en la nube conectadas.

El modo de API de actividades está optimizado para el examen y la recuperación de grandes cantidades de datos (más de 5000 actividades). El examen de API consulta los datos de la actividad repetidamente hasta que se hayan examinado todos los resultados.

Nota:

Para grandes cantidades de actividades e implementaciones a gran escala, se recomienda usar el agente SIEM para el examen de actividad.

Para usar el script de examen de actividad

  1. Ejecute la consulta en los datos.
  2. Si hay más registros de los que se podrían enumerar en un solo examen, obtendrá un comando return con nextQueryFilters el que debe ejecutar. Obtendrá este comando cada vez que examine hasta que la consulta devuelva todos los resultados.

Parámetros del cuerpo de la solicitud

  • "filtros": Filtre objetos con todos los filtros de búsqueda de la solicitud, consulte Filtros de actividad para obtener más información. Para evitar que se limiten las solicitudes, asegúrese de incluir una limitación en la consulta, por ejemplo, consultar las actividades del último día o filtrar por una aplicación determinada.
  • "isScan": booleano. Habilita el modo de examen.
  • "sortDirection": dirección de ordenación. Valores posibles: asc y desc.
  • "sortField": campos usados para ordenar actividades. Los posibles valores son:
    • date - Fecha en la que se produjo la actividad (es el valor predeterminado).
    • created - Marca de tiempo cuando se guardó la actividad.
  • "limit": Integer. En el modo de examen, entre 500 y 5000 (el valor predeterminado es 500). Controla el número de iteraciones usadas para examinar todos los datos.

Parámetros de respuesta

  • "data": los datos devueltos. Contendrá hasta "límite" de registros cada iteración. Si hay más registros que extraer (hasNext=true), los últimos registros se quitan para asegurarse de que todos los datos se muestran solo una vez.
  • "hasNext": booleano. Indica si se necesita otra iteración en los datos.
  • "nextQueryFilters": si se necesita otra iteración, contiene la consulta JSON consecutiva que se va a ejecutar. Úselo como parámetro "filters" en la siguiente solicitud. Si el parámetro "hasNext" está establecido en False, faltará este parámetro, ya que se ha iterado en todos los datos.

En el siguiente ejemplo de Python se obtienen todas las actividades del último día de Exchange Online.

import requests
import json
ACTIVITIES_URL = 'https://<your_tenant>.<tenant_region>.portal.cloudappsecurity.com/api/v1/activities/'

your_token = '<your_token>'
headers = {
'Authorization': 'Token {}'.format(your_token),
}

filters = {
  # optionally, edit to match your filters
  'date': {'gte_ndays': 1},
  'service': {'eq': [20893]}
}
request_data = {
  'filters': filters,
  'isScan': True
}

records = []
has_next = True
while has_next:
    content = json.loads(requests.post(ACTIVITIES_URL, json=request_data, headers=headers).content)
    response_data = content.get('data', [])
    records += response_data
    print('Got {} more records'.format(len(response_data)))
    has_next = content.get('hasNext', False)
    request_data['filters'] = content.get('nextQueryFilters')

print('Got {} records in total'.format(len(records)))

Pasos siguientes

Si tiene algún problema, estamos aquí para ayudarle. Para obtener ayuda o soporte técnico para el problema del producto, abra una incidencia de soporte técnico.