OAuth-clients maken en beheren
OAuth is een beveiligingsprotocol voor autorisatie en delegering. Hiermee kunnen toepassingen van derden toegang krijgen tot API-bronnen zonder de referenties van de eindgebruiker bekend te maken. Een OAuth-client vraagt een autorisatiecode op en wisselt deze uit met een toegangstoken en gebruikt het token om via API's toegang te krijgen tot inhoud van Qlik Cloud.
OAuth-clienttypen
Een OAuth-client is een webtoepassing of software die namens een gebruiker toegang vraagt tot bronnen in Qlik Cloud. OAuth definieert twee soorten clients, openbare en vertrouwelijke clients, om autorisatie tussen een applicatie (de client) en de autorisatieserver (Qlik Cloud) te beveiligen.
Qlik Cloud ondersteunt vertrouwelijke clients voor traditionele webapplicaties (server) en openbare clients voor native applicaties en applicaties met één pagina die specifieke autorisatiestromen gebruiken.
Voor de officiële OAuth 2.0-specificatie over clienttypen, raadpleegt uRFC 6749 Section 2.1: OAuth 2.0 Client Types.
Openbare clients
Openbare clients zijn applicaties die het clientgeheim niet gebruiken omdat ze de vertrouwelijkheid van de vereiste referenties niet kunnen waarborgen. In Qlik Cloud omvatten deze frontend-applicaties zoals single-page applicaties (SPA) met ingebouwde analyses of aangepaste visualisatie-uitbreidingen in Qlik Sense waarvoor gebruikersauthenticatie vereist is.
Vertrouwelijke clients
Vertrouwelijke clients kunnen veilig een client-ID en clientgeheim opslaan en deze gebruiken om zich te verifiëren bij de autorisatieserver. Deze clients kunnen toegang hebben tot beschermde resources omdat ze het clientgeheim hebben.
Voorbeeld: een webapplicatie met een beveiligde back-end die communiceert met Qlik Cloud API's om gebruikerstoegang te beheren of vernieuwtaken voor gegevens te regelen.
OAuth-autorisatieflows
Qlik ondersteunt twee autorisatieflows (toewijzingstypen):
-
Autorisatiecodeflow: voor vertrouwelijke clients.
-
Autorisatiecodeflow met bewijssleutel voor code-uitwisseling (PKCE): voor openbare clients.
Autorisatiecodeflow
Deze flow wordt gebruikt door applicaties aan de serverkant waarvan de broncode niet openbaar is. Hierbij wordt een autorisatiecode uitgewisseld voor een toegangstoken, waarbij het clientgeheim wordt gebruikt voor verificatie. Webapplicaties die deze flow gebruiken moeten op de server staan omdat het clientgeheim tijdens de uitwisseling voor een token wordt doorgegeven aan de autorisatieserver.
Voor meer informatie over de autorisatiecodeflow, raadpleegt u de officiële OAuth 2.0- documentatie: Authorization Code Flow.
Autorisatiecodeflow met PKCE
Native applicaties en applicaties met één pagina kunnen een clientgeheim niet veilig opslaan omdat hun broncode in een browser kan worden gedecompileerd of geïnspecteerd. PKCE verbetert de beveiliging door het gebruik van een codeverificatie te vereisen om een toegangstoken te verkrijgen.
Voor meer informatie over de autorisatiecodeflow, raadpleegt u de officiële OAuth 2.0- documentatie: Authorization Code Flow with Proof Key for Code Exchange (PKCE).
OAuth-bereiken en -machtigingen
OAuth-bereiken definiëren het toegangsniveau dat aan OAuth-clienttoepassingen wordt verleend. Een toegangstoken kan bijvoorbeeld volledige toegang tot bronnen toestaan of deze beperken tot alleen-lezen toegang. In Qlik Cloud kunt u met bereiken de clienttoegang tot beschikbare functies en bronnen beheren. Zonder bereiken hebben clients geen toegang tot bronnen.
Beschikbare OAuth-bereiken
De tabel toont beschikbare bereiken en hun bijbehorende machtigingen:
Bereik | Machtiging |
---|---|
user_default | Volledige toegang tot uw account en inhoud |
admin_classic |
Volledige beheerderstoegang tot uw tenant Zie ook: Qlik Cloud implementeren en beheren InformatieWordt niet ondersteund voor het clienttype met de app met één pagina en native clienttypen.
|
admin.apps |
Lees en beheer alle apps in de tenant. Zie ook: Apps beheren |
|
Alle apps in de tenant exporteren Zie ook: Apps exporteren |
|
Alle apps in de tenant lezen |
admin.automations |
Alle automatiseringen in de tenant lezen en beheren Zie ook: Automatiseringen beheren |
|
Alle automatiseringen in de tenant lezen |
admin.spaces |
Alle ruimten in de tenant lezen en beheren Zie ook: Ruimten beheren |
|
Alle ruimten in de tenant lezen |
apps |
Uw apps lezen en beheren Zie ook: Apps beheren |
|
Uw apps exporteren Zie ook: Apps exporteren |
|
Uw apps lezen |
automatiseringen |
Uw automatiseringen lezen en beheren Zie ook: Automatiseringen beheren |
|
Al uw automatiseringen lezen |
automl-experimenten | Uw ML-experimenten lezen en beheren |
automl-implementaties | Uw ML-implementaties lezen en beheren |
identity.email:read |
Uw e-mailadres lezen Zie ook: Identiteitsproviders in Qlik Cloud |
identity.name:read |
Uw volledige naam lezen |
identity.picture:read |
Uw profielfoto lezen Zie ook: Identiteitsproviders in Qlik Cloud |
identity.subject:read |
Uw gebruikersidentificatie lezen |
spaces.data |
Uw gegevensruimten lezen en beheren Zie ook: Ruimten beheren |
|
Uw gegevensruimten lezen |
spaces.managed |
Uw beheerde ruimten lezen en beheren Zie ook: Ruimten beheren |
|
Uw beheerde ruimten lezen |
spaces.shared |
Uw gedeelde ruimten lezen en beheren Zie ook: Ruimten beheren |
|
Uw gedeelde ruimten lezen |
offline_access |
Toegang tot bronnen terwijl u offline bent InformatieWordt niet ondersteund voor het clienttype met de app met één pagina .
|
OAuth-clients maken
OAuth-clients worden beheerd door tenantbeheerders vanuit het Beheer-activiteitencentrum op de OAuth-pagina. Met een OAuth-client kunt u uw clienttoepassing integreren met Qlik Cloud om veilig toegang te krijgen tot bronnen.
Limieten voor OAuth-clients
De volgende limieten zijn van toepassing:
-
Maximaal 5 omleidings-URL's per client.
-
Maximaal 5 toegestane oorsprongen per client.
-
Maximaal 5 clientgeheimen per client.
-
Maximaal 200 OAuth-clients per tenant.
Stappen om een OAuth-client te maken
Doe het volgende:
-
In het Beheer-activiteitencentrum gaat u OAuth.
-
Klik op Nieuw maken.
-
Selecteer een clienttype:
-
Web voor vertrouwelijke clients.
-
App met één pagina of Native voor openbare clients.
-
-
Voer in het dialoogvenster een naam in voor de OAuth-client.
-
Voer desgewenst een beschrijving in.
-
Selecteer een van de beschikbare bereiken door te scrollen of het zoekveld te gebruiken.
TipGebruik de knoppen Alles en Geselecteerd om alle bereiken of alleen geselecteerde bereiken te tonen. -
Voer één of meer omleidings-URL's voor de OAuth-clienttoepassing (maximaal 5) in. Klik vervolgens op Toevoegen om de omleidings-URL toe te voegen aan de acceptatielijst.
-
De omleidings-URL is de URL waar de autorisatieserver de browser van de gebruiker naartoe verzendt na een succesvolle authenticatie en het verlenen van toegang aan de clientapplicatie. Bijvoorbeeld: https://www.exampleapp.com/oauth/callback, waarbij /oauth/callback de authenticatiecallbacks van de OAuth-provider verwerkt.
-
Qlik Cloud zal de gebruiker na een succesvolle autorisatie alleen terugleiden naar de toepassing als de URL in de acceptatielijst met omleidings-URL's staat.
-
URL's moeten beginnen met https:// tenzij het domein localhost is; in dat laatste geval kan de URL starten met http://. Native apps kunnen ook de applicatiespecifieke koppelingsnotatie gebruiken, bijvoorbeeld: exampleapp://.
-
-
Voor de clienttypen Web of App met één pagina geeft u één of meer toegestane oorsprongen op (maximaal 5).
-
Toegang tot de applicatie wordt uitsluitend toegewezen als de URL is toegevoegd aan de lijst met toegestane oorsprongen.
-
-
Voor clienttype Web kunt u een van de volgende opties inschakelen voor automatische systeemtoegang zonder interactie van de gebruiker:
-
Machine-to-Machine (M2M) toestaan: maakt communicatie tussen systemen mogelijk zonder tussenkomst van de gebruiker.
-
M2M-gebruikersimitatie toestaan: staat uw toepassing toe om zich namens gebruikers te verifiëren en als hen op te treden tijdens het verificatieproces.
-
-
Klik op Maken.
-
Klik op Kopiëren naar klembord om de client-id en het clientgeheim op te slaan voor later gebruik. Sla het clientgeheim op een veilige locatie op.
InformatieOpenbare clients hebben geen clientgeheim. -
Klik op Gereed.
OAuth-clients voor specifieke gebruiksscenario's
Raadpleeg de volgende bronnen voor gebruiksscenario's van OAuth-clients:
-
Overzicht van OAuth op de Qlik Developer Portal: overzicht van OAuth-gebruiksscenario's en de verschillende OAuth-typen.
-
Een OAuth-client maken voor de Qlik-add-in voor Microsoft Excel: een OAuth-client instellen voor de installatie van de Qlik-invoegtoepassing voor Microsoft Excel.
-
Een OAuth-client maken voor anonieme insluitingen van app-inhoud: maak een OAuth-client om anonieme toegang tot ingesloten app-inhoud mogelijk te maken.
Een OAuth-client maken voor de Qlik-add-in voor Microsoft Excel
Configuratie voor een OAuth-client is vereist om de Qlik-add-in voor Microsoft Excel te installeren. De add-in wordt gebruikt door rapportontwikkelaars om rapportsjablonen op te zetten die de uitvoer van rapporten in tabelvorm vanuit de Qlik Sense-app regelen.
Om OAuth te kunnen gebruiken in de add-in, moet de OAuth-client precies zoals de hieronder getoonde configuratie worden geconfigureerd.
Doe het volgende:
-
In het Beheer-activiteitencentrum gaat u in Qlik Cloud naar OAuth.
-
Klik op Nieuw maken.
-
Selecteer App met één pagina in het vervolgkeuzemenu Clienttype. Er worden nu meer velden weergegeven.
-
Voer een naam in. De Beschrijving is optioneel.
-
Selecteer tenminste het selectievakje op om het user_default-bereik te gebruiken. U kunt andere bereiken gebruiken in de configuratie, maar zonder user_default werkt de installatie niet.
Zie Beschikbare OAuth-bereiken voor een volledige beschrijving van elk bereik dat beschikbaar is.
-
Voer in het veld Omleidings-URL's toevoegen de URL van uw tenant in, gevolgd door de vaste tekenreeks: /office-add-ins/oAuthLoginSuccess.html
Het resultaat zou er als volgt uit moeten zien: https://YourServer/office-add-ins/oAuthLoginSuccess.html
-
Klik op Toevoegen.
-
Voer in het veld Toegestane oorsprongen toevoegen uw tenant-URL in en klik op Toevoegen.
-
Klik op Maken.
-
Het venster Client-id kopiëren wordt geopend. U kunt nu de Client-id naar het klembord kopiëren of u kunt u op Gereed klikken om het venster te sluiten.
Nadat u de OAuth-client hebt gemaakt, kunt u de koppeling naar het bijgewerkte XML-manifestbestand ophalen in het Beheer-activiteitencentrum. Ga naar de pagina Instellingen en navigeer naar Delen en rapporten > Excel-invoegtoepassing binnen het Beheer-activiteitencentrum. Gebruik deze koppeling om de add-in te installeren in te implementeren.
Voor meer informatie over het genereren van het manifestbestand en voor de installatie en implementatie van een add-in, raadpleegt u:
-
De Qlik-add-in voor Microsoft Excel implementeren en installeren
-
Installatiemanifests beheren voor de Qlik-add-in voor Microsoft Excel
Een OAuth-client maken voor anonieme insluitingen van app-inhoud
Om inhoud van een app in te sluiten voor anonieme toegang met qlik-embed, moet u een OAuth-client maken met een type dat speciaal voor dit gebruiksscenario is ontworpen.
Doe het volgende:
-
Ga in het Beheer-activiteitencentrum naar de sectie OAuth.
-
Klik op Nieuw maken.
-
Selecteer Anoniem insluiten in het vervolgkeuzemenu Clienttype.
-
Voer een Naam in en optioneel een Beschrijving voor de OAuth-client.
-
Voer onder Toegestane oorsprongen elke oorsprong in die u moet autoriseren. Dit zijn de domeinen die toegang krijgen tot de Qlik Cloud-tenant om de informatie voor de ingesloten analyses op te halen.
Klik op Toevoegen na het invoegen van elke URL.
-
Klik op Maken zodra u gereed bent.
-
Klik op Kopiëren naar klembord om de client-id op te slaan voor later gebruik. Dit is nodig wanneer de inhoud van de app is ingesloten door qlik-embed.
-
Klik op Gereed.
OAuth-clients bewerken
U kunt de naam van een OAuth-client wijzigen, de beschrijving bijwerken of de omleidings-URL's beheren.
Doe het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Zoek de OAuth-client die u wilt bewerken.
- Klik op
en selecteer vervolgens Bewerken.
- Wijzig de opties van de OAuth-client indien nodig.
- Klik op Opslaan.
OAuth-clients verwijderen
U kunt een OAuth-client verwijderen wanneer deze niet langer nodig is of de toegang tot de client intrekken.
Doe het volgende:
-
In het Beheer-activiteitencentrum gaat u OAuth.
-
Selecteer één of meer OAuth-clients die u wilt verwijderen en klik op Verwijderen.
- Bevestig de verwijdering.
OAuth-clients publiceren
OAuth-clients worden eerst gekoppeld aan de tenant die de clients gemaakt heeft. U kunt echter een OAuth-client configureren om te delen met meerdere tenants binnen dezelfde regio. Hierdoor kunnen toepassingen van derden dezelfde client-id gebruiken binnen verschillende Qlik Cloud-tenants.
Eigenaren van de applicatie kunnen geheimen rouleren en de configuratie bijwerken zonder tussenkomst van een tenantbeheerder. Tenantbeheerders hoeven geen referenties te beheren of op de hoogte te zijn van configuratiedetails voor de gepubliceerde client.
U moet de OAuth-client publiceren om andere tenants in staat te stellen ermee verbinding te maken.
Doe het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Zoek de OAuth-client die u wilt publiceren.
- Klik op
naast de client en selecteer Publiceren.
- Klik op Publiceren om te bevestigen.
Zodra de OAuth-client gepubliceerd is, wordt deze beschikbaar voor extern gebruik door andere tenants. Wanneer gebruikers een externe website bezoeken die gebruikmaakt van Qlik OAuth, worden ze gevraagd naar hun tenant-hostnaam en vervolgens naar de gebruikersreferenties, tenzij de gebruiker al een actieve SaaS-sessie heeft.
Voor de eerste aanmelding is toestemming nodig van een tenantbeheerder. Na goedkeuring verschijnt de OAuth-client in het Beheer-activiteitencentrum van de tenant.
Toestemmingsmethoden
Standaard vraagt Qlik Cloud gebruikers om toestemming bij het verifiëren. Om het proces te stroomlijnen, vooral voor vertrouwde toepassingen, kunt u de toestemmingsmethode instellen op "Vertrouwd", waardoor de toestemmingsvraag overgeslagen wordt.
U hebt twee opties voor het geven van toestemming:
-
Vereist: de gebruiker wordt elke keer om toestemming gevraagd als er een nieuw bereik voor de OAuth-client wordt aangevraagd. Deze methode zorgt voor expliciete goedkeuring van de gebruiker voor elk toegangsniveau.
-
Vertrouwd: de gebruiker wordt niet om toestemming gevraagd. Deze optie is alleen beschikbaar voor niet-gepubliceerde clients. Voor gepubliceerde clients is de toestemmingsmethode altijd Vereist om de beveiliging bij meerdere tenants te garanderen.
De toestemmingsmethode wijzigen
Om de toestemmingsmethode voor een OAuth-client te wijzigen, doet u het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Klik in de OAuth-client op
en selecteer Toestemmingsmethode wijzigen.
- Selecteer Vereist of Vertrouwd en klik vervolgens op Toestemmingsmethode wijzigen.
De OAuth-configuratie bekijken en kopiëren
Selecteer in de sectie OAuth van het Beheer-activiteitencentrum de optie OAuth-configuratie weergeven om de verificatiedetails voor uw Qlik Cloud-tenant weer te geven. Er wordt een stukje code getoond met OAuth-eindpunten en instellingen, evenals een URL die u kunt kopiëren voor gebruik in externe toepassingen.
U kunt deze configuratie gebruiken om Qlik Cloud te integreren met toepassingen van derden, API-toegang te automatiseren of authenticatie te configureren voor geïntegreerde analyses.
Clientgeheimen beheren
Als een clientgeheim gecompromitteerd is of als uw beveiligingsbeleid periodieke updates vereist, kunt u geheimen toevoegen of verwijderen. Om downtime te voorkomen, kunt u meerdere clientgeheimen toevoegen (maximaal 5), uw clienttoepassing bijwerken en vervolgens het oude geheim verwijderen.
Een clientgeheim toevoegen
Doe het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Zoek de OAuth-client.
- Klik op
en selecteer vervolgens Geheimen beheren.
- Klik op Een nieuw clientgeheim genereren.
-
Kopieer het clientgeheim en de client-id en bewaar ze veilig.
InformatieU kunt het clientgeheim later niet meer opvragen. - Klik op Sluiten.
Een clientgeheim verwijderen
Doe het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Zoek de OAuth-client.
- Klik op
en selecteer vervolgens Geheimen beheren.
- Klik op
naast het clientgeheim.
- Klik op Sluiten.
OAuth-clienttoepassingen bouwen om toegang te krijgen tot Qlik Cloud
Nadat u een OAuth-client hebt geregistreerd bij Qlik Cloud, kunt u de bijbehorende client-id en het clientgeheim gebruiken in uw OAuth-clienttoepassing.
Raadpleeg voor stapsgewijze begeleiding de zelfstudies in de sectie Overzicht van OAuth van de Qlik Developer Portal. Deze zelfstudies behandelen hoe u clienttoepassingen kunt bouwen met populaire programmeertalen.