Saltar al contenido

Página de registro de auditoría en la Management Console de Jitterbit

Introducción

La página Registro de auditoría de la Management Console permite a los administradores de la organización Harmony recuperar registros de la actividad de los usuarios de Harmony que se lleva a cabo en la Management Console, API Manager, y Integration Studio, y usuarios externos accediendo al API Manager Portal página.

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

Registro de auditoría

Como alternativa a la visualización de los registros de auditoría en esta página, puede recuperar los 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 produce la actividad del usuario.

Prerrequisitos

Para habilitar y ver los registros de auditoría, debe ser miembro de un rol con permiso Admin en la organización.

Habilitar el registro de auditoría

El control para habilitar o deshabilitar el registro de auditoría se sincroniza en estas dos páginas de la Management Console:

  • Esta página: Seleccione Registro de auditoría deshabilitado para activar o Registro de auditoría habilitado para desactivar el registro de auditoría para la currently active organization:

    encabezado de página 1a

    encabezado de página 1b

  • Organizations Página: Seleccione la organización adecuada en la tabla. En el cajón Políticas de la organización, seleccione la pestaña Administración de API y, luego, seleccione Habilitar registro de auditoría para activar o desactivar el registro de auditoría para la organización.

Encabezado de la página de registro de auditoría

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

encabezado de página 2

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

Barra de búsqueda

Criterios de búsqueda

Las búsquedas se realizan en el key=value formato. Los cinco criterios que se pueden utilizar como claves se muestran con ejemplos en la siguiente tabla:

Nombre de columna Clave Búsqueda válida
Nombre de usuario username username=example@jbexample.com
Acción action action=query
action=update
Identificación del ambiente environmentId environmentId=123456
Nombre del ambiente environmentName environmentName=production
Descripción de la actividad activity activity=two factor

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

Filtros de fecha y hora

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

Para cambiar el período, haga clic en el botón Icono de calendario en la barra de rango de fechas:

Barra de rango de fechas

Se abre un selector de fechas donde puede establecer las fechas de inicio y finalización del período de visualización:

Filtro de fecha de registro de auditoría

Para restablecer el período al valor predeterminado, haga clic en la barra de rango de fechas icono de reinicio.

Opciones adicionales

A la derecha de los filtros de fecha y hora se encuentran los siguientes controles:

  • Actualizar: Actualiza los datos de la tabla.

  • Configuración de columnas: Abra el cajón de configuración de columnas:

    Configuración de columnas

    Use esto para cambiar la disposición y visibilidad de las columnas. El cajón tiene los siguientes controles:

    • Mostrar todo: Hace que todas las columnas sean visibles.
    • Mover: Arrastre y suelte para cambiar la posición de la columna con respecto a otras.
    • Ocultar: La columna está visible. Haz clic para ocultarla.
    • Mostrar: La columna está oculta. Haz clic para mostrarla.
    • Guardar: Guarda las columnas.
    • Cancelar: Cierra el cajón de columnas sin guardar los cambios.
  • 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 y criterios de búsqueda aplicados.

Cuando hay más de 100 operaciones, se dividen en páginas de 100 cada una. Puede desplazarse por ellas utilizando estos botones de navegación en la parte inferior de la tabla:

Paginador de registro de auditoría

  • Primera página: Ir a la primera página.

  • Página anterior: Ir a la página anterior.

  • Página siguiente: Ir a la página siguiente.

  • Última página: Ir a la última página.

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 tienen lugar en la Management Console, el API Manager y Integration Studio:

Tabla de registro de auditoría

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

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

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

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

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

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

  • Información de la actividad: Cuando se produce una acción de despliegue, esta columna muestra los nombres de las actividades afectadas Integration Studio Proyecto y operación. 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. Cuando se agrega o elimina un perfil de seguridad de API Manager, se muestra el cambio. Cuando se cambia un rol de usuario, se muestra el cambio.

  • Hora: La hora de la actividad. Las horas se muestran en la huso horario de tu navegador.

  • ID del ambiente: El ID del ambiente o ambientes donde se lleva a cabo la actividad.

  • Nombre del ambiente: El nombre del ambiente donde se lleva a cabo la actividad.

  • Descripción de la actividad: Una descripción de la actividad. Si no hay ninguna descripción disponible, se muestra la URL del extremo.

API del servicio de registro de auditoría

Como alternativa a la visualización de los registros de auditoría en la página Registro de auditoría de la Management Console, puede recuperar los 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 servicio 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

Para recuperar un token de autenticación se requiere el uso de la API del controlador de servicio de usuario.

Importante

Si tu Harmony organización tiene TFA habilitado, esta solicitud fallará. Recuperar el token de autenticación requiere 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 base

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

Región URL base
NA /A https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login
Europa, Oriente Medio y África 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 Obligatorio Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.

Parámetros corporales

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

Parámetro obligatorio Obligatorio Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso 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 posterior autorización 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 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 Harmony organización de un usuario tiene habilitada la autenticación de dos factores (TFA), por lo que recuperar el token de autenticación requiere 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 la solicitud de 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 base

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

Región URL base
NA /A https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login
Europa, Oriente Medio y África 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 Obligatorio Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.
Parámetros corporales

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

Parámetro obligatorio Obligatorio Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso 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 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 base

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

Región URL base
NA /A https://na-east.jitterbit.com/jitterbit-cloud-restful-service/user/login/code
Europa, Oriente Medio y África 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 Obligatorio Ejemplo Descripción
Content-Type Requerido 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.
Parámetros corporales

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

Parámetro obligatorio Obligatorio Tipo Ejemplo Descripción
email Obligatorio Cadena alice@jbexample.com Nombre de usuario de Harmony (dirección de correo ) con un rol con permiso 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 enviado 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 posterior autorización 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 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 interese, puede recuperar los registros de auditoría. Un ejemplo que muestra cómo recuperar 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 aparecen en el registro, las contraseñas, frases de contraseñas y tokens de autenticación se sobrescriben con asteriscos para ocultarlos.

URL base

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

Región URL base
NA /A https://api.na.jitterbit.com/v1/auditlog
Europa, Oriente Medio y África 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 un 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 Obligatorio 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. De forma predeterminada, esto es false.

Encabezados

Estos encabezados se pueden utilizar en la solicitud:

Encabezado Obligatorio 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 servicio de usuario.
Content-Type Obligatorio 'Content-Type: application/json' Indica el formato que se enviará en la solicitud.

Parámetros corporales

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

Parámetro Clave Obligatorio Tipo Ejemplo Descripción
queryParams No aplica 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 Identificación de la organización de Harmony. La organización debe estar ubicada en la región que coincide 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 identificadores 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 aplica 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 devolverán. Especifique una hora en el futuro para devolver todos los registros. Los registros se conservan durante treinta días. Aunque puede especificar una fecha en el pasado y en el futuro, solo están disponibles los registros de los últimos treinta días de actividad.
range fromTimestamp Obligatorio Cadena 2021-01-01T00:00:00.000Z Fecha y hora "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 descargada como CSV en un formato de archivo comprimido (ZIP) a 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 en el ambiente. Una respuesta con un solo valor indica que la operación se realizó a nivel del ambiente y afecta solo a ese ambiente. Una respuesta con varios valores indica que la operación se realizó a nivel de la organización y afecta a varios ambientes.