Luvitustavat
Avoin
Mitään luvitusta ei vaadita.
API-avain
Turvasähköpostilla välitetty palvelun API-avain annetaan Authorization headerissa (Authorization: Basic base64("client_id:client_secret"))
Client credentials
Palvelun client_id ja turvasähköpostilla välitetty client_secret annetaan Authorization headerissa (Authorization: Basic base64("client_id:client_secret"))
OAuth2.0 access token
Käyttäjäkohtainen access token, joka annetaan Authorization headerissa (Authorization: Bearer <access token>). Access tokenin muodostus:
- Käyttäjä ohjataan rajapintaan "Luvitussivu, jolla käyttäjä antaa luvan tietoihinsa", parametrissa scope mitä tietoja käyttäjästä halutaan tallentaa tai hakea.
- Käyttäjän antaessa luvan, ohjautuu käyttäjän selain palvelulle määritettyyn redirect_uriin authorization_coden kanssa.
- Saatu authorization_code annetaan rajapintaan "Käyttäjän tokeneiden haku".
- Paluuarvona saadaan käyttäjän access token ja refresh token.
- Access tokenia voidaan nyt käyttää luvitusta vaativiin rajapintoihin. Access tokenin expiroituessa refresh tokenia voidaan käyttää "Käyttäjän tokeneiden haku" rajapintaan hakemaan uusi access token ja refresh token.
OAuth2.0 scopet
Tuetut scopet on listattu rajapinnassa "OpenID Connect -konfiguraatio" kohdassa "scopes_supported". Karkeasti yksittäinen scope antaa luvan:
- lukea käyttäjän attribuutin jostain toisesta palvelusta (esim. "age")
- jakaa käyttäjän attribuutin muille palveluille, jos scopen alussa on "store:" (esim. "store:age")
Käyttäjän hyväksyessä luvituksen annetaan myös aina scope "openid", jotta palvelu voi identifioida käyttäjän.
Hankkeen aikana toteutettu toiminnallisuus - arkistoitu
Käyttötapaus | Avoin | API-avain | Client credentials | OAuth2.0 user access token |
---|---|---|---|---|
Profiilinhallinta | ||||
Käyttäjän attribuuttien haku | ||||
Käyttäjän attribuuttiosoittimien lisäys | ||||
Käyttäjän attribuuttiosoittimien poisto (ei vaadi access tokenia, jotta osoittimet voidaan poistaa deaktivoinnin jälkeenkin) | ||||