Aller au contenu principal

Initialisation de l'application

Pour commencer à utiliser l'API Lagertha, vous devez au préalable realiser différentes oppérations d'initialisation:

  • créer une utilisateur ROLE_SUPER_ADMIN
  • créer une première application
  • créer un utilisateur ROLE_ADMIN pour cette application

Creation de l'utilisateur ROLE_SUPER_ADMIN

Créez le super utilisateur et effectuez les tâches initiales :

make init

Les informations de connexion de l'utilisateur s'afficherons dans la console, enregistrez les, notament:

  • login
  • password
  • application_id

Elles vous permettrons de vous connecter

à présent vous êtes connecté et l'API est utilisable

Creation de la première application

pour créer la première application:

make create_application NAME=<nom de l'application> EMAIL=<email de contact>

Les informations de la nouvelle application s'afficherons dans la console

Creation du premier user ROLE_ADMIN

Une fois la première application crée il est necessaire de créer un premier user ROLE_ADMIN pour celle ci.

Cette opération ce realise au travers de l'API

Authentification du user ROLE_SUPER_ADMIN

Authentifiez vous après de l'api avec le user ROLE_SUPER_ADMIN créé précédement:

curl -X POST https://<BAS_URL>:<PORT>/auth \
-H "Content-Type: application/json" \
-d '{
"login": "<LOGIN_SUPER_ADMIN>",
"password": "<PASSWORD_SUPER_ADMIN>",
"application_id": 0,
"fingerprint": "<UNIQUE_DEVICE_ID>"
}'

remarque

Si vous utilisez les certificats autosigné, il est necessaire de rajouter --insecure à la commande curl

Récuperez en retour l'access_token

Creation du user ROLE_ADMIN

Puis créez le user ROLE_USER de la nouvelle application

curl -X POST https://<BAS_URL>:<PORT>/users \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access_token>" \
-H "X-NONCE: <RANDOM_NONCE>" \
-H "X-FINGERPRINT: <UNIQUE_DEVICE_ID> \
-d '{
"email": "<NEW_USER_EMAIL>",
"password": "<NEW_USER_STRONG_PASSWORD>",
"firstname": "<USER_FIRSTNAME>",
"lastname": "<USER_LASTNAME>",
"login": "<NEW_USER_LOGIN>",
"application_id": <NEW_USER_APPLICATION_ID>,
"is_admin": true
}'

remarque

Si vous êtes en mode dev les headers X-NONCE et X-FINGERPRINT ne sont pas necessaires

Félicitation votre premier USER ROLE_ADMIN est créé, vous êtes maintenant prêt