Met API's zijn er veel verschillende manieren van authenticeren. Aangezien Deployteq steeds compatibeler wordt met allerlei soorten API's en steeds meer standaard manieren heeft om te integreren, zijn er meer authenticatiemethoden nodig. Authenticatie met certificaten is er een van.
In deze documentatie gaan we ervan uit dat je de basisprincipes kent van het ondertekenen van API-verzoeken met certificaten. We zullen alleen beschrijven hoe je ze kunt gebruiken binnen Deployteq.
Certificate manager
Ten eerste hebben we binnen Deployteq een interface gemaakt waarin je je eigen certificaten kunt beheren. Deze certificaten worden beschikbaar gesteld in verschillende integraties en API-apps, zoals de webhooks en PEGA. Geef de certificaten altijd een duidelijke naam, zodat je weet welke je moet gebruiken binnen de andere modules in Deployteq.
Er zijn twee verschillende soorten certificaten binnen Deployteq:
Zelfondertekende certificaten
Deployteq kan zelfondertekende certificaten uitgeven voor een specifiek domein. Wat je zult ontvangen, is het openbare certificaat voor het clientcertificaat, dat je kunt installeren in de applicatie van de derde partij. De derde partij kan het verzoek valideren bij Deployteq om ervoor te zorgen dat het verzoek daadwerkelijk afkomstig is van Deployteq. De uitgegeven certificaten hebben automatisch een geldigheidsduur van 1 jaar. Je ontvangt het openbare certificaat om te implementeren bij de derde partij. De algemene naam kan zijn *.deployteq.com en *.deployteq.cloud, dus bijvoorbeeld api.deployteq.com.
Geüploade certificaten
Wanneer er inkomende oproepen zijn naar de webhook, kun je het certificaat binnen Deployteq uploaden via de uploadfunctie. Je zult een scherm zien waar je opnieuw het certificaat een duidelijke naam kunt geven en het certificaat als tekst in Deployteq kunt plakken. Later kun je dit certificaat gebruiken binnen inkomende API's zoals de webhook, waarbij we de oproep met dit certificaat kunnen verifiëren.
Zodra een certificaat is verlopen of als je de toegang tot Deployteq wilt intrekken voor een bepaald certificaat, kun je eenvoudig het certificaat verwijderen in de manager en zal de verbinding op basis van dat certificaat niet langer beschikbaar zijn.
Tenslotte kun je de openbare certificaten bekijken, bijvoorbeeld om te controleren of ze overeenkomen met degene in je verbonden applicatie of om ze op een later tijdstip aan derden te verstrekken.
Het gebruik van certificaten bij uitgaande integraties
De eerste uitgaande integratie die we momenteel hebben is PEGA. Wanneer je een certificaat uitgeeft, kun je nu selecteren voor welke app je het certificaat wilt gebruiken.
Dit kan tot 10 minuten duren voordat het correct werkt voor het volgende verzoek.
De app zal het eerste geldige certificaat gebruiken dat in de certificate manager staat. In de PEGA-app kun je een eindpunt en gebruikersnaam-wachtwoord toevoegen. Dit zal als fallback dienen op het moment dat het certificaat niet geldig is of verwijderd is.
Het gebruik van certificaten met webhooks
Wanneer je een geüpload certificaat wilt gebruiken voor een specifieke webhook, kun je dit selecteren bij het maken van de webhook. Nadat je je webhook een naam hebt gegeven en een geüpload certificaat klaar hebt staan in de certificate manager, krijg je de vraag of je een clientcertificaat wilt gebruiken om het verzoek te valideren. Als je dit aanvinkt, krijg je een vervolgkeuzemenu waarin je een van de geüploade certificaten kunt selecteren.