Propósito
Cyber Guru ofrece la posibilidad de obtener información sobre la finalización de cursos por parte de los usuarios en la plataforma, mediante una REST API que devuelve un conjunto de datos adecuado para ser utilizado por el Learning History Connector de SAP SuccessFactors Learning.
La automatización de la adquisición de los datos proporcionados por Cyber Guru en SAP SuccessFactors Learning depende de los procesos y arquitecturas del cliente y, por este motivo, no puede ser gestionada por Cyber Guru.
Esta guía contiene las directrices y parámetros para la invocación del servicio por parte del cliente.
Alcance
La información se aplica a la plataforma de Concienciación en Ciberseguridad Cyber Guru 2.0.
Requisitos previos
El cliente debe tener los recursos tecnológicos para poder llamar a la REST API con una frecuencia
-
El cliente debe crear los cursos en SAP SuccessFactors Learning y comunicar los correspondientes CPNT_ID a Cyber Guru, según el siguiente esquema de ejemplo (considerar solo las actividades que forman parte del paquete adquirido):
Nombre de la Actividad de Cyber Guru
CPNT_ID
Módulo 1 Phishing
999
Módulo 2 Malware
888
Módulo 3 Contraseñas
666
etc.
Procedimiento
Cyber Guru pone a disposición dos REST API:
Obtener token: https://<...>/protocol/openid-connect/token
Esta API permite obtener un token de autorización.
Parámetros de llamada (método POST):
client_id: ext-api
client_secret: < proporcionado por Cyberguru>
grant_types: client_credentials
Obtener datos del curso: https://<...>/ext/sap/success-factors
que permite importar un subconjunto de datos de Cyber Guru a SAP Success Factor.
Para poder invocar la API es necesario proporcionar el token obtenido en la API anterior como "Bearer token".
La API recibe los siguientes parámetros de entrada (método GET):
suffix (Obligatorio, String)
cpnt_typ_id (Obligatorio, String)
cmpl_stat_id (Obligatorio, String)
separator (Opcional, Char, por defecto: ',')
es_user_name (Opcional, String)
start_date (Opcional, formato MON-DD-YYYY)
end_date (Opcional, formato MON-DD-YYYY)
output_mode (Opcional), 1 archivo (por defecto), 2 json
A continuación se indica el significado de los parámetros:
suffix: id del tenant de SAP Success Factor
cpnt_typ_id: id del tipo de ítem
cmpl_stat_id: id del estado de finalización
separator: el separador utilizado en caso de salida de tipo archivo
start_date: fecha de inicio para filtrar el conjunto de resultados; en caso de ausencia de start_date se devolverán los registros desde el inicio
end_date: fecha de fin para filtrar el conjunto de resultados; en caso de ausencia de end_date se devolverán los registros hasta la fecha actual
output_mode: modo de adquisición de la respuesta. Por defecto se devuelve un archivo denominado lerninghistory_data_{suffix}.txt, tal como lo requiere el Learning History Connector; es posible modificar este parámetro para recibir la respuesta en formato JSON.
La respuesta de la API, en caso de output_mode = 1, es el archivo lerninghistory_data_{suffix}.txt que puede ser importado directamente en SAP (las operaciones de importación automática pueden ser gestionadas directamente por el departamento de TI del cliente).
Los atributos contenidos en la respuesta son todos los atributos considerados obligatorios por SAP Success Factor y un subconjunto de atributos considerados opcionales por SAP Success Factor (por ejemplo, no se pasan atributos opcionales sobre los cuales Cyber Guru no tiene datos disponibles). A continuación, el detalle:
Nombre del Atributo |
Tipo de Dato |
Descripción |
STUD_ID |
Varchar (90) |
Requerido. Nombre de usuario en Cyber Guru |
CPNT_TYP_ID |
Varchar (90) |
Requerido. cpnt_typ_id en el parámetro de entrada |
CPNT_ID |
Varchar (90) |
Requerido. ID del curso en SAP SF ( * ) |
CMPL_STAT_ID |
Varchar (90) |
Requerido. cmpl_stat_id en el parámetro de entrada |
COMPL_DTE |
Date Time |
Requerido. Formato MON-DD-YYYY HH24:MI:SS |
COMPL_DTE_TIMEZONE |
Varchar (90) |
Opcional |
GRADE |
Varchar (90) |
Opcional (Puntos del usuario en la actividad en Cyber Guru) |
ES_USER_NAME |
Varchar (90) |
Opcional. es_user_name en el parámetro de entrada |
En caso de output_mode = 2, el servicio devolverá un JSON con los mismos atributos del archivo. Por ejemplo:
{
"status": 200,
"data": [
{
"STUD_ID": "john.doe",
"CPNT_TYP_ID": "986",
"CPNT_ID": "MOD_007",
"CMPL_STAT_ID": "992",
"COMPL_DTE": "Apr-15-2024 14:48:18",
"COMPL_DTE_TIMEZIONE": "",
"GRADE": 4,
"ES_USER_NAME": "Mark Twain"
},
{
"STUD_ID": "mario.rossi",
"CPNT_TYP_ID": "986",
"CPNT_ID": "MOD_002",
"CMPL_STAT_ID": "992",
"COMPL_DTE": "Mar-16-2024 16:53:59",
"COMPL_DTE_TIMEZIONE": "",
"GRADE": 30,
"ES_USER_NAME": "Mark Twain"
},
{
"STUD_ID": "carlos.bianchi",
"CPNT_TYP_ID": "986",
"CPNT_ID": "MOD_004",
"CMPL_STAT_ID": "992",
"COMPL_DTE": "Mar-16-2024 16:53:13",
"COMPL_DTE_TIMEZIONE": "",
"GRADE": 4,
"ES_USER_NAME": "Mark Twain"
}
]
}
Para el correcto funcionamiento del proceso, es necesario que se creen en SAP Success Factor los cursos y se comuniquen a Cyber Guru los CPNT_ID correspondientes, tal como se expresa en los requisitos previos.
Luego, Cyber Guru comunicará el client id y el secret para poder obtener el token e invocar la API.
Cyber Guru está disponible para apoyar al cliente en la fase de configuración y prueba en un entorno de staging y, tras el resultado positivo de la prueba, en un entorno de producción.