Autentisering i API:et är token-baserad.

I övergripande drag innebär det att först genomförs en inloggningsdialog mellan klient och API.
Dialogen avslutas med att klienten får ett access-token tillbaka i HTTP headern, som sedan skickas med vid anrop till API:et.





1. Klienten anropar /api/login?user={user}&password={password}

2. API:et gör ett login-anrop mot Fastighetssystemet (databas, etc)
   a. Om login går fel returneras felmeddelande och dialogen avbryts
   b. Om login går korrekt genererar API:et ett access-token med en begränsad livslängd och returnerar detta till klienten i HTTP headern

3. Klienten anropar API:et och anger access-token i http-headern

4. API:et verifierar att accesstoken är korrekt och att livstiden är OK
   a. Om verifieringen går fel returneras felmeddelande och dialogen avbryts
   b. Om verifieringen går bra förnyas livlängden för accesstoken och API:et genomför anropet


Exempel:
Access-Token: 12345




Behörighetsstyrning är upp till respektive API-implementation att styra över fritt.

När autentiseringsdialogen är godkänd kan API:et genomföra de behörighetskontroller som önskas. I de fall behörighetskontrollen misslyckas returneras ett felmeddelande enligt API:ets generella standard för felhantering.




För att uppnå kryptering av datatrafiken mellan API:et och klienten ska kommunikationen ske över HTTPS.

Detta ger ingen påverkan på designen eller implementationen av API:et, utan innebär att ett certifikat behöver installeras på API:ets server.

För mer information om HTTPS: http://tools.ietf.org/html/rfc2818