@extends('documentation.webservice.squelette') @section('titre') {{ __("Sécurité") }} @endsection @section('menu')
Le web service ELAN Providers est protégé par un système de tokens qui peut être simple ou double selon les cas.
Chaque appel devra être accompagné d’un token "elan-token" passé dans le header.
Chaque token est unique pour chaque Elan providers. Par exemple Effimaintenance n’aura pas le même que EuropFacilities.
Nous allons gérer deux tokens dans le fichier .env:
APP_TOKEN
Token général d’appel interne Elan.
Avec ce token on peut faire du GET, POST... sur toute la base. On ne filtre pas sur l'enseigne appelante.
APP_TOKEN_SIGN
Token que les prestataires devront nous passer en paramètre.
Il va concerner une enseigne en particuler. C'est ce token qui sera fourni aux prestataires.
Exemple de fichier .env :
APP_TOKEN=xtokenelan-d03ed756-256a5-32e87-65315-3268ac456321
APP_TOKEN_SIGN=xtokenelan-d03esss6-21235-32e87-65315-3268ac456321
Ce code va nous permettre de relier l’enseigne appelante à l’appel via des correspondances.
C’est un champ alphanumérique de longueur 15 dont la valeur sera générée aléatoirement et stockée au niveau de l’enseigne dans la base ELAN providers.
Exemple de valeur de clé :
sig-code-ws=vbnhg412grg1231
curl --location --request GET 'http://elan_providers/api/interventions?order=int_number,asc' \
--header 'Content-Type: application/json' \
--header 'elan-token: xtokenelan-d03esss6-21235-32e87-65315-3268ac456321' \
--header 'sig-code-ws: vbnhg412grg1231' \
--data-raw ''
var settings = {
"url": "http://elan_providers/api/interventions?order=int_number,asc",
"method": "GET",
"timeout": 0,
"headers": {
"Content-Type": "application/json",
"elan-token": "xtokenelan-d03esss6-21235-32e87-65315-3268ac456321",
"sig-code-ws": "vbnhg412grg1231"
},
};
$.ajax(settings).done(function (response) {
console.log(response);
});