Objectif
Cyber Guru offre la possibilité d'acquérir des informations sur l'achèvement des cours par la population présente sur la plateforme, via une API REST qui renvoie un ensemble de données adapté à être utilisé par le Learning History Connector de SAP SuccessFactors Learning.
L'automatisation de l'acquisition des données fournies par Cyber Guru dans SAP SuccessFactors Learning dépend des processus et des architectures du client et ne peut donc pas être supervisée par Cyber Guru.
Ce guide contient les directives et les paramètres pour l'invocation du service par le client.
Champ d'application
Les informations s'appliquent à la plateforme de sensibilisation à la cybersécurité Cyber Guru 2.0.
Prérequis
Le client doit disposer des ressources technologiques pour pouvoir appeler l'API REST à une certaine fréquence
-
Le client doit créer les cours sur SAP SuccessFactors Learning et communiquer les CPNT_ID correspondants à Cyber Guru, selon le schéma d'exemple suivant (considérer uniquement les activités faisant partie du package acheté) :
Nom de l'activité Cyber Guru
CPNT_ID
Module 1 Phishing
999
Module 2 Malware
888
Module 3 Mot de passe
666
etc.
Procédure
Cyber Guru met à disposition deux API REST :
Obtenir un token : https://<...>/protocol/openid-connect/token
Cette API permet d'obtenir un token d'autorisation.
Paramètres d'appel (méthode POST) :
client_id : ext-api
client_secret : < fourni par Cyberguru>
grant_types : client_credentials
Obtenir les données de cours : https://<...>/ext/sap/success-factors
qui permet d'importer un sous-ensemble de données de Cyber Guru à SAP Success Factor.
Pour pouvoir invoquer l'API, il est nécessaire de fournir le token obtenu dans l'API précédente comme "Bearer token".
L'API prend en entrée les paramètres suivants (méthode GET) :
suffix (Obligatoire, String)
cpnt_typ_id (Obligatoire, String)
cmpl_stat_id (Obligatoire, String)
separator (Optionnel, Char, par défaut : ',')
es_user_name (Optionnel, String)
start_date (Optionnel, format MON-DD-YYYY)
end_date (Optionnel, format MON-DD-YYYY)
output_mode (Optionnel), 1 fichier (par défaut), 2 json
Ci-dessous est indiqué la signification des paramètres :
suffix : identifiant du locataire de SAP Success Factor
cpnt_typ_id : identifiant du type d'élément
cmpl_stat_id : identifiant de l'état de complétion
separator : le séparateur utilisé en cas de sortie de type fichier
start_date : date de début pour filtrer l'ensemble des résultats ; en l'absence de start_date, les enregistrements seront retournés depuis le début
end_date : date de fin pour filtrer l'ensemble des résultats ; en l'absence de end_date, les enregistrements seront retournés jusqu'à la date actuelle
output_mode : mode d'acquisition de la réponse. Par défaut, un fichier nommé lerninghistory_data_{suffix}.txt est retourné, comme requis par le Learning History Connector ; il est possible de modifier ce paramètre pour recevoir la réponse au format JSON.
La réponse de l'API, dans le cas où output_mode = 1, est le fichier lerninghistory_data_{suffix}.txt qui peut être directement importé sur SAP (les opérations d'importation automatique peuvent être gérées directement par le département informatique du client).
Les attributs contenus dans la réponse sont tous les attributs considérés comme obligatoires par SAP Success Factor et un sous-ensemble d'attributs considérés comme optionnels par SAP Success Factor (par exemple, les attributs optionnels pour lesquels Cyber Guru ne dispose pas de données ne sont pas transmis). Voici le détail :
Nom de l'attribut |
Type de données |
Description |
STUD_ID |
Varchar (90) |
Requis. Nom d'utilisateur dans Cyber Guru |
CPNT_TYP_ID |
Varchar (90) |
Requis. cpnt_typ_id dans le paramètre d'entrée |
CPNT_ID |
Varchar (90) |
Requis. ID du cours dans SAP SF ( * ) |
CMPL_STAT_ID |
Varchar (90) |
Requis. cmpl_stat_id dans le paramètre d'entrée |
COMPL_DTE |
Date Heure |
Requis. Format MON-DD-YYYY HH24:MI:SS |
COMPL_DTE_TIMEZONE |
Varchar (90) |
Optionnel |
GRADE |
Varchar (90) |
Optionnel (Points de l'utilisateur sur l'activité dans Cyber Guru) |
ES_USER_NAME |
Varchar (90) |
Optionnel. es_user_name dans le paramètre d'entrée |
Dans le cas où output_mode = 2, le service renverra un JSON avec les mêmes attributs que le fichier. Par exemple :
{
"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"
}
]
}
Pour le bon fonctionnement du processus, il est nécessaire que les cours soient créés sur SAP Success Factor et que les CPNT_ID correspondants soient communiqués à Cyber Guru comme exprimé dans les prérequis.
Cyber Guru communiquera ensuite l'identifiant client et le secret pour pouvoir obtenir le token et invoquer l'API.
Cyber Guru est à disposition pour soutenir le client lors de la phase de configuration et de test sur un environnement de staging et, suite au succès du test, en environnement de production.