Authenticatie met OpenID

De Ymonitor API is beveiligd met een OpenID authenticatie mechanisme. De gebruiker dient zich eerst te authenticeren bij het systeem met zijn of haar Ymonitor account.

Om te authenticeren bij de Ymonitor API moet de gebruiker het volgende doen:

De gebruiker moet een HTTP POST uitvoeren:

POST /auth/realms/Ymonitor-production/protocol/openid-connect/token HTTP/1.1Host: www.ymonitor.nl Content-Type: application/x-www-form-urlencoded grant_type=password&client_id=ymonitor-frontend&username=user&password=pass

Als de gebruikersnaam en wachtwoord combinatie wordt goedgekeurd door de server en het account toegang heeft tot de Ymonitor API, wordt er als antwoord de volgende structuur teruggegeven:

{"access_token": "response_access_token","expires_in": 123,"refresh_expires_in": 123,"refresh_token": "response_refresh_token","token_type": "bearer","id_token": "response_id_token","not-before-policy": 0,"session_state": "response_session_state"}

Deze strucuur bevat het authenticatieToken - "access_token" - dat in alle volgende requests meegestuurd moet worden als de waarde van de HTTP header

Authorization: Bearer response_access_token


Het gebruik van een token mechanisme voorkomt dat de gebruiker voor ieder request apart moet authenticeren.

Als voorbeeld, om de ketens op te vragen moet er een HTTP GET request uitgevoerd worden:

Verder op deze pagina vind u code-voorbeelden met betrekking tot authenticeren bij de Ymonitor API.

Als het is gelukt om de authenticeren bij de Ymonitor API bent u in staat om data te gaan opvragen bij de Ymonitor API. Hoe dat moet leest u hier: https://userhappiness.atlassian.net/wiki/spaces/CM/pages/752156713

Java voorbeeld

Er wordt gebruik gemaakt van de OK HTTP client.

In het volgende voorbeeld is te zien hoe u zicht kunt authentiseren bij de Ymonitor API.

Objective C voorbeeld

Javascript

Wij hebben CORS niet enabled. Dit resulteert in een error omdat de server niet antwoord met de juiste Acces-Control-headers. Javascript kan alleen gebruikt worden in combinatie met Node.JS, wij willen u adviseren om een scripttaal zoals Perl, Bash of Python te gebruiken.

Waarom de server een error terug geeft kunt u in dit artikel lezen.