Saltar al contenido

Registro de Auditoría

Introducción

La página Registro de auditoría de Management Console permite a los administradores de organizaciones de Harmony (miembros de una rol con Admin permiso de organización) para recuperar registros de la actividad del usuario de Harmony que tiene lugar en Management Console y Cloud Studio, y usuarios externos accediendo al API Manager Portal página.

Para acceder a la página Registro de auditoría, inicie sesión en el Portal de Harmony, luego use el menú del Portal Harmony en la parte superior izquierda y navegue hasta Management Console > Registro de auditoría:

registro de auditoría de la consola de administración

Como alternativa a ver registros de auditoría en la página Registro de auditoría de Management Console, puede recuperar registros de auditoría mediante una API REST. La API del servicio de registro de auditoría se describe más adelante en esta página.

Nota

Los registros de auditoría se conservan durante 30 días después de que se realiza la actividad del usuario.

Requisitos Previos

Para habilitar y ver registros de auditoría, debe ser miembro de una rol con permiso de Administrador en la organización. Para obtener información sobre funciones y permisos, consulte Administrar permisos, funciones y miembros.

Habilitar Registro de Auditoría

Para habilitar y deshabilitar el registro de auditoría para una organización específica:

  1. Inicie sesión en el Portal de Harmony y vaya a Management Console > Organizaciones.

  2. Seleccione la organización adecuada en el menú de la barra de navegación superior.

  3. Utilice el menú Acción de esa organización para seleccionar Editar políticas de la organización.

  4. Seleccione Habilitar registro de auditoría y haga clic en Guardar para guardar las políticas de la organización y activar el registro de auditoría para la organización.

Nota

Asegúrese de acceder a la organización deseada, que se puede cambiar en la barra de navegación superior (consulte Cambiar la organización seleccionada en Portal de Harmony).

Encabezado de la Página de Registro de Auditoría

El encabezado en la parte superior de la página Registro de auditoría incluye filtros de fecha y hora, una barra de búsqueda y opciones adicionales:

encabezado de página

Filtros de Fecha y Hora

De forma predeterminada, los datos del registro de auditoría de los últimos dos días se muestran en la tabla de registro de auditoría.

Utilice los campos de calendario Desde y Hasta para filtrar los datos del registro de auditoría por fecha y hora:

  • De: Haga clic en el ícono de calendario ícono de calendario para ajustar la fecha de inicio de los registros de auditoría. Haga clic en el ícono del reloj ícono del reloj para ajustar la hora de inicio de los registros de auditoría.

  • Para: Haga clic en el ícono de calendario ícono de calendario para ajustar la fecha de finalización de los registros de auditoría. Haga clic en el ícono del reloj ícono del reloj para ajustar la hora de finalización de los registros de auditoría.

Una vez seleccionadas la fecha y horas deseadas, haga clic en el botón de búsqueda botón de búsqueda en la barra de búsqueda para completar la tabla de registros de auditoría con los registros de auditoría deseados.

La barra de búsqueda le permite filtrar los registros según los criterios de búsqueda proporcionados a continuación:

Barra de búsqueda

Criterio de Búsqueda

Estos son ejemplos de los criterios de búsqueda que se pueden utilizar:

Criterio Búsqueda válida
Nombre de usuario username=example@jbexample.com
Acción action=query
action=update
ID del ambiente environmentid=123456
Nombre del ambiente environmentname=production
Nombre de la operación operationname=login

Las búsquedas pueden contener una combinación de criterios. Los criterios de búsqueda combinados deben estar separados por un punto y coma (;) entre cada criterio. Estos son ejemplos de búsquedas combinadas válidas:

action=update;environment=production
environmentid=123456;action=create

Opciones Adicionales

Se muestran opciones adicionales de registro de auditoría en el lado derecho de la página junto a la barra de búsqueda:

botón de descarga

  • Descargar: Haga clic para descargar un archivo ZIP que contiene un archivo CSV con los datos del registro de auditoría actual según los filtros aplicados y los criterios de búsqueda.

  • Flecha hacia abajo: Haga clic para filtrar las columnas que se muestran en la tabla de registro de auditoría. De forma predeterminada, todas las columnas están seleccionadas para mostrarse:

    Opciones de vista de columna

Ver Registros de Auditoría

Cada fila de la tabla de registros de auditoría muestra datos de registro de auditoría de la actividad y los inicios de sesión que se realizan en Management Console y Cloud Studio:

filas de datos

  • Nombre de usuario: El nombre de usuario del usuario que realiza la actividad.

  • URL del Extremo de Jitterbit: El nombre (ruta) de la llamada API a Harmony que se registró.

  • Acción: La acción realizada por el usuario, una de Crear, Eliminar, Actualizar o Consultar:

    • Crear: Indica que el usuario creó nuevos datos en el contenido de una página en Management Console o un proyecto en Cloud Studio. Por ejemplo, crear un nuevo agente en Management Console o desplegar un proyecto en Cloud Studio serían acciones Crear.

    • Eliminar: Indica que el usuario eliminó datos del contenido de una página en Management Console o un proyecto en Cloud Studio. Por ejemplo, eliminar un agente en Management Console o eliminar un proyecto de Cloud Studio serían acciones Eliminar.

    • Actualización: Indica que el usuario actualizó el contenido de una página en Management Console o un proyecto en Cloud Studio. Por ejemplo, cambiar el nombre de un agente en Agentes > Agentes sería una acción Actualizar.

    • Consulta: Indica que el usuario vio el contenido de una página en Management Console o un proyecto en Cloud Studio. Por ejemplo, ver la lista de proyectos en Cloud Studio sería una acción de Consulta.

  • Hora: La marca de tiempo de la actividad. Los horarios se muestran en la huso horario de su navegador.

  • ID del ambiente: El ID del ambiente donde se desarrolla la actividad.

  • Nombre del Ambiente: El nombre del ambiente donde se desarrolla la actividad.

    Nota

    Las columnas vacías para ID del ambiente y Nombre del ambiente indican que la actividad no está relacionada con un ambiente específico.

  • Información de actividad: Cuando ocurre una acción de despliegue, esta columna muestra los nombres del proyecto y la operación de Cloud Studio afectados. Cuando se implementa un proyecto, se muestra el nombre del proyecto. Cuando se implementa una sola operación, se muestra el nombre del proyecto que contiene la operación y el nombre de la operación.

API del Servicio de Registro de Auditoría

Como alternativa a ver registros de auditoría en la página Registro de auditoría de Management Console, puede recuperar registros de auditoría mediante una API REST. Esto requiere el uso de utilidades de línea de comandos como curl o aplicaciones como Postman.

Para utilizar la API del servicio de registro de auditoría, después de habilitar el registro de auditoría para la organización (descrita anteriormente en esta página), siga estos pasos:

  1. Recupere un token de autenticación mediante la API del controlador de servicios de usuario. Este token es necesario para utilizar la API del servicio de registro de auditoría.

  2. Recuperar registros utilizando la API del servicio de registro de auditoría.

Recuperar un Token de Autenticación

La recuperación de un token de autenticación requiere el uso de la API del controlador de servicios de usuario.

Importante

Si su organización Harmony tiene TFA habilitado, esta solicitud fallará. Para recuperar el token de autenticación se requieren dos solicitudes diferentes.

Una solicitud de ejemplo que muestra el inicio de sesión en la región NA y la recuperación del token de autorización:

Using curl
curl --location --request PUT 'https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "alice@jbexample.com",
    "password": "Jitterbit4Ever!"
}'

URL Básica

La URL base depende de la región en la que se encuentra la organización:

Región URL básica
NA https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login
EMEA https://emea-west.jitterbit.com/jitterbit-cloud-restful-service/user/login
Asia Pacífico https://apac.jitterbit.com/jitterbit-cloud-restful-service/user/login

Encabezados

Estos encabezados son obligatorios:

Encabezado Requerido Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.

Parámetros del Cuerpo

Estos parámetros requeridos se pasan en el cuerpo de la solicitud:

Parámetro requerido Requerido Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso de Admin en la organización
password Obligatorio Cadena Jitterbit4Ever! Contraseña de usuario de Harmony

Cuerpo de Respuesta

El cuerpo de la respuesta devuelta contiene una lista de las organizaciones con las que está asociado el usuario además del token de autenticación ("authenticationToken"). Este token es necesario para la autorización posterior con la API de registro de auditoría. En este ejemplo, el token de autenticación es "1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4". El ID de la organización se muestra como "123456" para la primera organización a la que pertenece este usuario. Un ejemplo bastante impreso de la respuesta:

Response Body
{
  "status": true,
  "operation": "User login",
  "authenticationToken": "1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4",
  "serverUrl": "https://na-east.jitterbit.com",
  "cloudAppsUrl": "https://na-east.jitterbit.com",
  "orgAttrs": [
    {
      "orgId": "123456",
      "orgName": "JB Example Company",
      "orgZoneUrl": "https://na-east.jitterbit.com"
    },
    {
      "orgId": "20970",
      "orgName": "example@jbexample.com",
      "orgZoneUrl": "https://na-east.jitterbit.com"
    }
  ],
  "defaultOrgId": "123456",
  "sessionTimeoutInSeconds": 14400
}

Recuperar un Token de Autenticación con TFA Habilitado

Si la organización Harmony de un usuario tiene habilitada la autenticación de dos factores (TFA), para recuperar el token de autenticación se requieren dos solicitudes mediante la API del controlador de servicio de usuario:

  1. Recuperar un código TFA

  2. Utilice el código TFA para recuperar un token de autenticación

Recuperar un Código TFA

Se requiere un código TFA válido para recuperar un token de autenticación cuando TFA está habilitado. Una solicitud de ejemplo que muestra el inicio de sesión en la región NA y solicita un código TFA:

Using curl
curl --location --request PUT 'https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "alice@jbexample.com",
    "password": "Jitterbit4Ever!",
    "deviceId": "abcd"
}'
URL Básica

La URL base depende de la región en la que se encuentra la organización:

Región URL básica
NA https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login
EMEA https://emea-west.jitterbit.com/jitterbit-cloud-restful-service/user/login
Asia Pacífico https://apac.jitterbit.com/jitterbit-cloud-restful-service/user/login
Encabezados

Estos encabezados son obligatorios:

Encabezado Requerido Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.
Parámetros del Cuerpo

Estos parámetros requeridos se pasan en el cuerpo de la solicitud:

Parámetro requerido Requerido Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso de Admin en la organización
password Obligatorio Cadena Jitterbit4Ever! Contraseña de usuario de Harmony
deviceId Obligatorio Cadena abcd Identificador que se utilizará para confirmar el código TFA en la próxima solicitud
Cuerpo de Respuesta

El cuerpo de la respuesta devuelta contiene un mensaje de error que indica que se envió un código TFA a la dirección de correo del usuario.

Response Body
{
  "status": false,
  "operation": "User login",
  "errorCode": "VALIDATE_TFA_LOGIN_EMAIL",
  "errorMessage": "Validate your login with authentication code. An email from Jitterbit with the code was sent to you.",
  "authenticationToken": null,
  "serverUrl": "https://na-east.jitterbit.com",
  "orgAttrs": [],
  "defaultOrgId": null
}

Utilice el Código TFA para Recuperar un Token de Autenticación

El código TFA enviado a la dirección de correo del usuario ahora se puede utilizar en la segunda solicitud para recuperar el token de autenticación. Una solicitud de ejemplo que muestra el inicio de sesión en la región de NA con un código TFA y la recuperación del token de autorización:

Using curl
curl --location --request PUT 'https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login/code' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "alice@jbexample.com",
    "password": "Jitterbit4Ever!",
    "code": "112233"
    "deviceId": "abcd"
}'
URL Básica

La URL base depende de la región en la que se encuentra la organización:

Región URL básica
NA https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login/code
EMEA https://emea-west.jitterbit.com/jitterbit-cloud-restful-service/user/login/code
Asia Pacífico https://apac.jitterbit.com/jitterbit-cloud-restful-service/user/login/code
Encabezados

Estos encabezados son obligatorios:

Encabezado Requerido Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.
Parámetros del Cuerpo

Estos parámetros requeridos se pasan en el cuerpo de la solicitud:

Parámetro requerido Requerido Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso de Admin en la organización
password Obligatorio Cadena Jitterbit4Ever! Contraseña de usuario de Harmony
code Obligatorio Cadena 112233 Código TFA enviado al correo del usuario de Harmony
deviceId Obligatorio Cadena abcd Identificador presentado para generar el código TFA en la solicitud anterior
Cuerpo de Respuesta

El cuerpo de la respuesta devuelta contiene una lista de las organizaciones con las que está asociado el usuario además del token de autenticación ("authenticationToken"). Este token es necesario para la autorización posterior con la API de registro de auditoría. En este ejemplo, el token de autenticación es "1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4". El ID de la organización se muestra como "123456" para la primera organización a la que pertenece este usuario. Un ejemplo bastante impreso de la respuesta:

Response Body
{
  "status": true,
  "operation": "User login",
  "authenticationToken": "1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4",
  "serverUrl": "https://na-east.jitterbit.com",
  "cloudAppsUrl": "https://na-east.jitterbit.com",
  "orgAttrs": [
    {
      "orgId": "123456",
      "orgName": "JB Example Company",
      "orgZoneUrl": "https://na-east.jitterbit.com"
    },
    {
      "orgId": "654321",
      "orgName": "example@jbexample.com",
      "orgZoneUrl": "https://na-east.jitterbit.com"
    }
  ],
  "defaultOrgId": "123456",
  "sessionTimeoutInSeconds": 14400
}

Recuperar Registros de Auditoría

Una vez que tenga el token de autenticación, el ID de la organización y el período de tiempo que le interesa, puede recuperar los registros de auditoría. Un ejemplo que muestra la recuperación de todos los registros a partir del 1 de enero de 2021 e incluye la versión detallada de los registros:

Using curl
curl --request POST 'https://api.na.jitterbit.com/v1/auditlog?detail=true' \
--header 'accept: application/json' \
--header 'authToken: 1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4' \
--header 'Content-Type: application/json' \
--data-raw '{
    "queryParams": {
        "organization_id": "123456"
    },
    "range": {
        "fromTimestamp": "2021-01-01T00:00:00.000Z",
        "toTimeStamp": "9999-01-01T00:00:00.000Z"
    }
}'

Nota

Si están presentes en la salida del registro, las contraseñas, las frases de contraseña y los tokens de autenticación se sobrescriben con asteriscos para enmascararlos.

URL Básica

La URL base depende de la región en la que se encuentra la organización:

Región URL básica
NA https://api.na.jitterbit.com/v1/auditlog
EMEA https://api.emea.jitterbit.com/v1/auditlog
Asia Pacífico https://api.apac.jitterbit.com/v1/auditlog

Extremos

El servicio de registro de auditoría tiene estos extremos (APIs) disponibles:

Extremo Opcional accept Encabezado Descripción
auditlog 'accept: application/json' Devuelve registros de auditoría en formato JSON
auditlog/download 'accept: application/zip' Devuelve registros de auditoría en formato CSV comprimido (ZIP) con formato de nombre de archivo audit-log_YYYY_MM_DD_HH_MM_SS.zip

Parámetros de URL

Estos parámetros se pueden pasar en la URL:

Parámetro Requerido Tipo Ejemplo Descripción
detail Opcional booleano detail=true Indica si el user_id del usuario que realiza la acción se devolverá en los datos. Por defecto, esto es false.

Encabezados

Estos encabezados se pueden utilizar en la solicitud:

Encabezado Requerido Ejemplo Descripción
accept Opcional 'accept: application/json'
'accept: application/zip'
Indica el formato que se aceptará en la respuesta: uno de json o zip. Si se utiliza, debe coincidir con el extremo como se muestra arriba.
authToken Obligatorio 'authToken: 1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4' Pasa el token de autorización (authenticationToken) devuelto por la API del controlador de servicios de usuario.
Content-Type Obligatorio 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.

Parámetros del Cuerpo

Estos parámetros se pueden pasar en el cuerpo de la solicitud:

Parámetro Clave Requerido Tipo Ejemplo Descripción
queryParams No aplicable Obligatorio Mapa "queryParams": {
"organization_id": "123456"
}
Los parámetros de consultar utilizados al buscar en la base de datos del registro de auditoría; Los términos de consultar se combinan con un AND operador.
queryParams organization_id Obligatorio Cadena 123456 ID de la organización Harmony. La organización debe estar ubicada en la región que coincida con la URL base.
queryParams organization_name Opcional Cadena JB Example Company Nombre de la organización.
queryParams operation_name Opcional Cadena /jitterbit-cloud-restful-service/... El nombre (URL) de la operación (la llamada API a Harmony) que se registró.
queryParams action Opcional Cadena QUERY La acción realizada por la operación.
queryParams action_timestamp Opcional Cadena 2021-01-01T00:00:00.000Z Desde la fecha y hora, en formato aaaa-MM-ddTHH:mm:ss.sssZ.
queryParams environment_ids Opcional Cadena 132510, 132520, 132530 Lista separada por comas de ID de ambiente que se utilizarán en la consultar.
queryParams environment_names Opcional Cadena Development, QA Lista separada por comas de nombres de ambiente que se utilizarán en la consultar.
range No aplicable Obligatorio Mapa "range": {
"fromTimestamp": "2021-01-01T00:00:00.000Z",
"toTimeStamp": "9999-01-01T00:00:00.000Z"
}
El intervalo de tiempo de los registros de auditoría que se van a devolver. Especifique una hora en el futuro para devolver todos los registros. Los registros se conservan durante treinta días. Aunque puede especificar una fecha pasada y futura, solo están disponibles los registros de los últimos treinta días de actividad.
range fromTimestamp Obligatorio Cadena 2021-01-01T00:00:00.000Z Marca de tiempo de fecha "Desde", en formato aaaa-MM-ddTHH:mm:ss.sssZ.
range toTimestamp Obligatorio Cadena 2022-01-01T00:00:00.000Z Marca de tiempo de fecha "hasta", en formato aaaa-MM-ddTHH:mm:ss.sssZ.

Ejemplo

Este ejemplo utiliza el auditlog/download extremo para recuperar todos los registros de la organización 123456, con una acción de QUERY, a partir del 1 de enero de 2023, incluida la versión detallada de los registros, y descargados como CSV en formato de archivo comprimido (ZIP) en un archivo de salida:

Using curl
curl --request POST 'https://api.na.jitterbit.com/v1/auditlog/download?detail=true' \
--output 'download.zip' \
--header 'accept: application/zip' \
--header 'authToken: 1_70dfe7f7-1d47-4ad5-be5d-bc4a222dd2g4' \
--header 'Content-Type: application/json' \
--data-raw '{
    "queryParams": {
        "organization_id": "123456",
        "action": "QUERY"
    },
    "range": {
        "fromTimestamp": "2023-01-01T00:00:00.000Z",
        "toTimeStamp": "9999-01-01T00:00:00.000Z"
    }
}'

Ejemplo de Salida de Registro

Este es un fragmento de ejemplo de la salida JSON devuelta por el auditlog extremo:

Response Body
{
  "records": [
    {
      "username": "alice@jbexample.com",
      "organization_id": "123456",
      "organization_name": "JB Example Company",
      "operation_name": "/jitterbit-cloud-restful-service/user/login",
      "action": "UPDATE",
      "action_timestamp": "2023-03-23T09:59:59.999Z",
      "environment_ids": null,
      "environment_names": null,
      "sort_values": [
        1680083968484
      ],
      "user_id": null,
      "acitivity_info": null,
      "request_body": "null",
      "response_body": "null"
    },
    {
      "username": "bob@jbexample.com",
      "organization_id": "123456",
      "organization_name": "JB Example Company",
      "operation_name": "/jitterbit-cloud-restful-service/subscription/list/647330",
      "action": "QUERY",
      "action_timestamp": "2023-03-23T08:59:59.999Z",
      "environment_ids": null,
      "environment_names": null,
      "sort_values": [
          1680081692921
      ],
      "user_id": null,
      "acitivity_info": null,
      "request_body": "null",
      "response_body": "{\"subscriptions\":[{\"organizationId\":\"123321\",\"lastUpdatedBy\":\"alice@jbexample.com\",\"offeringName\":\"Jitterbit Harmony Enterprise\",\"activatedOn\":1658343482577,\"createdBy\":\"alice@jbexample.com\",\"displayExpiresOn\":1660934256000,\"lastUpdatedOn\":1658343482660,\"expiresOn\":2607705456000,\"id\":\"125521\",\"createdOn\":1658343482577,\"offeringEnumId\":\"5\"}],\"operation\":\"List Subscription by Organization\",\"status\":true}"
    },
    {
      "username": "bob@jbexample.com",
      "organization_id": "123456",
      "organization_name": "JB Example Company",
      "operation_name": "/jitterbit-cloud-restful-service/project/env/detail/654321",
      "action": "CREATE",
      "action_timestamp": "2023-03-23T07:59:59.999Z",
      "environment_ids": [
          "654321"
      ],
      "environment_names": [
          "Default Environment"
      ],
      "sort_values": [
          1679393229672
      ],
      "user_id": null,
      "acitivity_info": "Project: Salesforce to NetSuite Operation: Get Customers",
      "request_body": "null",
      "response_body": "{\"projEnvDetails\":{\"noOfConnections\":0,\"lastUpdatedBy\":\"alice@jbexample.com\",\"agentClusterId\":1,\"noOfHostedEndPoints\":0,\"appRuntime\":\"sandbox\",\"agentGroupId\":\"99999\",\"urlPrefix\":\"defaultUrlPrefix\",\"permission\":7,\"envId\":\"654321\",\"agentGroupName\":\"Production Cloud Agent Group\",\"lowestAgentVersion\":\"11.0.0.0\",\"createdOn\":1515425638817,\"orgId\":\"123456\",\"noOfScripts\":0,\"noOfProjects\":0,\"createdBy\":\"bob@jbexample.com\",\"envName\":\"Default Environment\",\"envType\":2,\"noOfFileFormats\":0,\"envDesc\":\"Default environment created by Harmony\",\"lastUpdatedOn\":1661335689017,\"noOfOperations\":0},\"operation\":\"Get detail of a Project Env\",\"status\":true}"
    },
. . .
  ]
}

Nota

Para la salida devuelta de environment_ids y environment_names, una respuesta con una null El valor indica que la operación no tiene impacto sobre el ambiente. Una respuesta con un solo valor indica que la operación fue a nivel de ambiente y afecta sólo a ese ambiente. Una respuesta con múltiples valores indica que la operación fue a nivel de organización e impacta múltiples ambientes.