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>"
}'
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
}'
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