Om een API key te ontvangen van een eLabNext gebruiker voor gebruik binnen uw eigen web-based platform, gebruikt u best de eLabNext 'Authenticatie flow voor 3rd party systemen' optie.
Hier zijn de vereisten voor het gebruik van dit authenticatiemechanisme:
Hieronder zie je een schema hoe de uitwisseling van tokens plaatsvindt. De voorbeeldcode downloaden om het in actie te zien. De voorbeeldcode vereist nodeJS te installeren op je systeem.
Op uw platform zal er een actie zijn voor de eindgebruiker om een API token aan te vragen bij eLabNext. De enige vraag aan de eindgebruiker is naar welk endpoint dit API token aangevraagd moet worden. Dit zorgt ervoor dat organisaties die eLabNext hosten, onder hun eigen domeinnaam, deze functie kunnen gebruiken.
Dit kan enige uitleg vergen voor eindgebruikers om te begrijpen wat er van hen gevraagd wordt. Idealiter zou je hun invoer valideren/parsen en corrigeren om te eindigen met de juiste syntaxis. (Bijvoorbeeld wanneer een eindgebruiker een pagina kopieert/plakt die hij regelmatig opent, zoals https://www.elabjournal.com/members/wilt u deze invoer misschien accepteren en corrigeren om het echte 'eindpunt' weer te geven, namelijk www.elabjournal.com voordat het wordt omgeleid naar https://{{eLab Endpoint}/members/fn/externalAuth/?rootVar=MyExampleRootVar&state=myOptionalStateString).
Hier, rootVar moet de rootVar van je add-on zijn. staat is een optioneel parameter die naar je wordt teruggekaatst. Dit kan gebruikt worden om een bepaalde toestandwaarde door te geven en/of om de beveiliging te verhogen door een mechanisme dat aan jouw kant geïmplementeerd is dat replay-aanvallen of parameter-manipulatie voorkomt (bijvoorbeeld door een salted hash van een bekende toestand door te geven).
De gebruiker wordt nu doorgestuurd naar https://{{eLab Endpoint}/members/fn/externalAuth/?rootVar=MyExampleRootVar&state=myOptionalStateString om toestemming te geven. Bij toestemming zal eLabNext de gebruiker naar u terugleiden op basis van de statische variabele authReturnURL in de naamruimte van uw Add-On. Hiermee wordt de retourautor URL aan onze kant voor beveiligingsdoeleinden gewist.
Merk op dat dit ook werkt tijdens het sideloaden van je script tijdens de ontwikkeling. In dat geval zal de authenticatiestroom standaard in 'Ontwikkelmodus' staan, wat betekent dat het alleen de authReturnURL van uw script dat aan de zijkant is geladen, waarbij lokaal geïnstalleerde add-ons worden omzeild.
De authReturnURL wordt aangeroepen, met het vraagtoken als URL-parameter. Het request token moet binnen 60 seconden worden gebruikt en kan maar één keer worden gebruikt. Aan jouw kant zul je dan de API aanroepen https://{eLab Endpoint}/api/v1/auth/user/exchangeToken
(hier gedocumenteerd), om het request token te gebruiken voor het ontvangen van een langlevend API token. Zorg ervoor dat u de waarde post als Content-Type application/json.
De voorbeeldcode downloaden om het in actie te zien. De voorbeeldcode vereist nodeJS te installeren op je systeem.
De authenticatiestroom lijkt erg op die van webapplicaties.
De vereisten voor het gebruik van dit authenticatiemechanisme zijn:
Het verzoektoken dat door je desktopapplicatie wordt ontvangen, moet binnen 60 seconden worden gebruikt en kan maar één keer worden gebruikt. Aan jouw kant zul je dan de API aanroepen https://{eLab eindpunt of host}/api/v1/auth/user/exchangeToken
(hier gedocumenteerd), om het request token te gebruiken voor het ontvangen van een langlevend API token. Zorg ervoor dat u de waarde post als Content-Type application/json.
Plan een persoonlijke demo voor deskundige begeleiding en een gratis evaluatie van uw labworkflow.