Commit 0326e715 authored by Mickaël Desfrênes's avatar Mickaël Desfrênes
Browse files

add missing authentication doc

parent 9b5106bc
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ API web pour la transformation de documents.
	- [Installation et démarrage du service](#installation-et-démarrage-du-service)
	- [Variables d'environnement et configuration par défaut:](#variables-denvironnement-et-configuration-par-défaut)
	- [Utilisation en ligne de commande](#utilisation-en-ligne-de-commande)
	- [Authentification](#Authentification)
	- [Ajouter des transformations](#ajouter-des-transformations)
- [Clients de référence](#clients-de-référence)
- [Tests](#tests)
@@ -217,6 +218,40 @@ Il est possible d'obtenir de l'aide sur chaque commande:
      -d, --debug           False
      -a, --access-log      False

### Authentification

Lorsque la variable d'environnement CIRCE_USE_AUTH est à "1", le serveur attend
une authentification sous la forme d'un hash HMAC du corps de la requête avec
une clef partagée entre le serveur est le client. Ce hash est ajouté aux entêtes
de la requête avec un identifiant propre au client de la façon suivante:

	Authorization: [identifiant du client] [hash HMAC du corps de la requête]

Pour plus de détails sur le hash HMAC, voir les différentes implémentations dans les
librairies clients listées en bas de ce README.

Toute la gestion des accès à l'API Circe se fait en ligne de commande.

Pour la création de l'accès:

	(venv) ➜  circe-server ✗ circe make-api-access -t MonClientDeTest
	Access granted to MonClientDeTest
	uuid    : 33f3f6c5-3bbc-4eeb-b661-e4579b2d9671
	secret: &#H-9csMX|0):'-eUP6'u,I6=5X}U|z/

Le client se voit attribué un UUID ainsi qu'une clef qu'il utilisera pour le hâchage.

Pour la suppression de l'accès:
	
	(venv) ➜  circe-server ✗ circe remove-api-access 33f3f6c5-3bbc-4eeb-b661-e4579b2d9671

Pour lister tous les accès:

	(venv) ➜  circe-server ✗ circe list-api-access                                       
	7afa5930a3c549b9a7003c0f98b55e73 : rcY<S<"\oHvjUJdf'w"J:YKE\?AKiG"~  [test client]
	3a5eb39cadb04c8e9b30ee167c2e4cb5 : ~1!|J;yxGkW)?Z]hQ\v+Rn*52?`y(_:z  [test client]
	a9e836331612498cb1681bc953132d82 : EQbQ&>)BxC|J/5Gz?4$BNr)~&\|k89`I  [test client]
	1f902a30f124450bbe267b56026d347f : L$xc8cwFiczK4z7n%.{eSg^y0xFrzBtX  [test client]

### Ajouter des transformations