From 2c4ae43e688a9873e86211ea0e7aeb9ba770dd77 Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 18 Oct 2022 08:59:09 +0200 Subject: Update --- .../pronote-api/src/fetch/pronote/auth.js | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 alarm/node_modules/pronote-api/src/fetch/pronote/auth.js (limited to 'alarm/node_modules/pronote-api/src/fetch/pronote/auth.js') diff --git a/alarm/node_modules/pronote-api/src/fetch/pronote/auth.js b/alarm/node_modules/pronote-api/src/fetch/pronote/auth.js new file mode 100644 index 0000000..9c1d566 --- /dev/null +++ b/alarm/node_modules/pronote-api/src/fetch/pronote/auth.js @@ -0,0 +1,43 @@ +const request = require('../../request'); +const { cipher } = require('../../cipher'); + +async function getId(session, username, fromCas) +{ + const { donnees: id } = await request(session, 'Identification', { + donnees: { + genreConnexion: 0, + genreEspace: session.type.id, + identifiant: username, + pourENT: fromCas, + enConnexionAuto: false, + demandeConnexionAuto: false, + demandeConnexionAppliMobile: false, + demandeConnexionAppliMobileJeton: false, + uuidAppliMobile: '', + loginTokenSAV: '' + } + }); + + return { + scramble: id.alea, + challenge: id.challenge + }; +} + +async function getAuthKey(session, challenge, key) +{ + const { donnees: auth } = await request(session, 'Authentification', { + donnees: { + connexion: 0, + challenge: cipher(session, challenge, { key }), + espace: session.type.id + } + }); + + return auth.cle; +} + +module.exports = { + getId, + getAuthKey +}; -- cgit