OAuth-clients maken en beheren
OAuth is een standaard 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 kan een autorisatiecode verkrijgen en deze uitwisselen met een toegangstoken dat kan worden gebruikt om via API's toegang te krijgen tot inhoud van Qlik Cloud.
Openbare en vertrouwelijke clients
OAuth heeft twee soorten clients, openbare en vertrouwelijke clients, om autorisatie tussen een applicatie (de client) en de autorisatieserver (Qlik Cloud) te beveiligen.
Openbare clients
Openbare clients zijn applicaties die het clientgeheim niet gebruiken omdat ze de vertrouwelijkheid van de vereiste referenties niet kunnen waarborgen. Openbare clients in Qlik Cloud zijn vaak front-end-applicaties zoals applicaties met één pagina met geïntegreerde analyse of een aangepaste visualisatie-uitbreiding in Qlik Sense die informatie vereist over de eindgebruiker om de levenscyclus van de applicatie te ondersteunen.
Zie : RFC 6749 Sectie 2.1: OAuth 2.0-clienttypen.
Qlik Cloud ondersteunt vertrouwelijke clients voor traditionele webapplicaties (server) en openbare clients voor systeemeigen en applicaties met één pagina die specifieke typen toewijzen gebruiken.
Vertrouwelijke clients
Een vertrouwelijke client is een applicatie die een client-id en clientgeheim veilig gebruikt zonder ze bloot te stellen aan onbevoegde partijen. Vertrouwelijke clients kunnen toegang hebben tot beschermde resources omdat ze het clientgeheim hebben. Een voorbeeld van een vertrouwelijke client is een webapplicatie met een beveiligde back-end die communiceert met Qlik Cloud API's om vernieuwtaken voor gegevens te regelen of gebruikerstoegang tot inhoud te beheren.
Soorten autorisatietoewijzing
Qlik ondersteunt twee typen, of stromen, voor het verlenen van autorisatie: Autorisatiecodeflow en Autorisatiecodeflow met bewijssleutel voor code-uitwisseling (PKCE). Deze flows lijken veel op elkaar maar ondersteunen verschillende gebruiksgevallen.
Autorisatiecodeflow
Traditionele webapplicatie zijn applicaties op de server waar de broncode niet openbaar wordt gemaakt. Om die reden kunnen ze gebruikmaken van de autorisatiecodeflow die een autorisatiecode uitwisselt voor een token. Webapplicaties die deze flow gebruiken moeten op de server staan omdat het clientgeheim van de applicatie tijdens het uitwisseling voor een token wordt doorgegeven aan de autorisatieserver.
Zie: Autorisatiecodeflow voor meer details.
Autorisatiecodeflow met bewijssleutel voor code-uitwisseling (PKCE).
Systeemeigen en applicaties met één pagina kunnen een clientgeheim niet opslaan omdat hun broncode toegankelijk is door decompilatie van de app of weergave van de bron van de app via een browser. PKCE voegt een extra laag bescherming toe aan openbare clients door het gebruik van de codeverificatie om een toegangstoken te verkrijgen.
Zie: Autorisatiecodeflow met bewijssleutel voor code-uitwisseling (PKCE) voor meer details.
Beschikbare bereiken voor OAuth-clients beperken
Met OAuth-bereiken kunt u de hoeveelheid toegang beperken die wordt verleend voor OAuth-clientapps. Een toegangstoken dat u hebt uitgegeven voor een clientapp kan bijvoorbeeld volledige toegang tot beschermde hulpbronnen of slechts leestoegang bieden.
In Qlik Cloud kunt u met bereiken de clienttoegang tot beschikbare functies en hulpbronnen beheren. Elk bereik biedt een ander toegangsniveau. Clients zonder bereiken hebben geen toegang tot hulpbronnen.
Een OAuth-client 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 te leren hoe u een OAuth-client maakt voor implementatie en installatie van de Qlik-add-in voor Microsoft Excel, raadpleegt u Een OAuth-client maken voor de Qlik-add-in voor Microsoft Excel.
Doe het volgende:
-
In het Beheer-activiteitencentrum gaat u OAuth.
-
Klik op Nieuw maken.
-
Selecteer een clienttype.
Gebruik Web voor vertrouwelijke clients en App met één pagina of Systeemeigen voor openbare clients.
-
In het dialoogvenster dat verschijnt, geeft u de OAuth-client een naam.
-
Voer desgewenst een beschrijving in.
-
Selecteer een van de beschikbare bereiken door te scrollen of het zoekveld te gebruiken.
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 geïntegreerde clienttypen.admin.apps Lees en beheer alle apps in de tenant.
Zie ook: Apps beheren
admin.apps:export
Alle apps in de tenant exporteren
Zie ook: Apps exporteren
admin.apps:read
Alle apps in de tenant lezen admin.automations Alle automatiseringen in de tenant lezen en beheren
Zie ook: Automatiseringen beheren
admin.automations:read
Alle automatiseringen in de tenant lezen admin.spaces Alle ruimten in de tenant lezen en beheren
Zie ook: Ruimten beheren
admin.spaces:read
Alle ruimten in de tenant lezen apps Uw apps lezen en beheren
Zie ook: Apps beheren
apps:export
Uw apps exporteren
Zie ook: Apps exporteren
apps:read
Uw apps lezen automatiseringen Uw automatiseringen lezen en beheren
Zie ook: Automatiseringen beheren
automations:read
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
identity.name:read
Uw volledige naam lezen identity.picture:read Uw profielfoto lezen
Zie ook: Identiteitsproviders
identity.subject:read
Uw gebruikersidentificatie lezen spaces.data Uw gegevensruimten lezen en beheren
Zie ook: Ruimten beheren
spaces.data:read
Uw gegevensruimten lezen spaces.managed Uw beheerde ruimten lezen en beheren
Zie ook: Ruimten beheren
spaces.managed:read
Uw beheerde ruimten lezen spaces.shared Uw gedeelde ruimten lezen en beheren
Zie ook: Ruimten beheren
spaces.shared:read
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 .InformatieU kunt de knoppen Alles en Geselecteerd boven de lijst gebruiken om alle bereiken of alleen geselecteerde bereiken te tonen.InformatieDe bovenstaande lijst weerspiegelt de bereiken die in de eerste release worden ondersteund. U vindt een volledige lijst van bereiken, inclusief bereiken die na de eerste release zijn toegevoegd, op de Qlik Ontwikkelaarsportal. -
Voer één of meer omleidings-URL's voor de OAuth-clienttoepassing in.
TipDe 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://. Systeemeigen apps kunnen ook de applicatiespecifieke koppelingsnotatie gebruiken, bijvoorbeeld: exampleapp://.
Klik op Toevoegen om de omleidings-URL toe te voegen aan de acceptatielijst.
-
Voor het clienttype Web of App met één pagina geeft u één of meer toegestane oorsprongen op. Toegang tot de applicatie wordt uitsluitend toegewezen als de URL is toegevoegd aan de lijst met toegestane oorsprongen.
-
Voor het clienttype Web kunt u Machine-to-Machine (M2M) toestaan of M2M-gebruikersimitatie toestaan inschakelen voor een geautomatiseerde systeemtoegang zonder interactie van de gebruiker. Met M2M-imitatie kunt u applicaties toestaan om tijdens de authenticatie namens gebruikers te handelen.
-
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. Klik op Gereed.
InformatieOpenbare clients hebben geen clientgeheim.
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 Een OAuth-client maken 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.
Een OAuth-client 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.
- Selecteer de OAuth-client die u wilt bewerken. Klik op ... en selecteer vervolgens Bewerken.
- Wijzig in het dialoogvenster de opties van de OAuth-client indien nodig.
- Klik op Opslaan.
Een OAuth-client publiceren
Gemaakte OAuth-clients worden automatisch gekoppeld aan de tenant die de clients gemaakt heeft. U kunt een OAuth-client configureren die gedeeld kan worden en beschikbaar is voor alle andere tenants binnen een regio. Toepassingen van derden die verbinding maken met Qlik Cloud kunnen vervolgens dezelfde client-id hebben voor alle Qlik Cloud-tenants. De eigenaar van de toepassing kan geheimen rouleren en de configuratie bijwerken zonder tussenkomst van een tenantbeheerder. Tenantbeheerders hoeven de referenties niet te beheren en hoeven geen kennis te hebben van de configuratiegegevens.
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.
- Selecteer de OAuth-client die u wilt publiceren. Klik op ... en selecteer Publiceren.
- Klik op Publiceren.
Wanneer gebruikers navigeren naar een externe website die gebruikmaakt van Qlik OAuth, worden ze gevraagd naar een tenant-hostnaam en vervolgens naar de gebruikersreferenties, tenzij de gebruiker al een actieve SaaS-sessie heeft. Er is toestemming nodig van een tenantbeheerder om de eerste keer met een externe OAuth-client in te loggen. Als deze is goedgekeurd, wordt de nieuwe OAuth-client getoond in het Beheer-activiteitencentrum.
Toestemmingsmethode
U hebt twee opties voor het geven van toestemming: Vereist en Vertrouwd. In het geval van Vereist, wordt voor autorisatie waarbij de OAuth-client wordt gebruikt elke keer om toestemming gevraagd als er een nieuw bereik voor de gebruiker wordt aangevraagd. In het geval van Vertrouwd wordt de gebruikers niets gevraagd. U kunt Vertrouwd alleen gebruiken voor clients die niet zijn gepubliceerd. Voor gepubliceerde clients is de toestemmingsmethode altijd Vereist.
De OAuth-configuratie bekijken en kopiëren
In de sectie OAuth van het Beheer-activiteitencentrum selecteert u OAuth-configuratie bekijken om de configuratie weer te geven als een stukje code en een URL om te kopiëren.
Een OAuth-client 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 de OAuth-client die u wilt verwijderen en klik op Verwijderen.
InformatieU kunt meer dan een OAuth-client tegelijk verwijderen. - Bevestig dat u de OAuth-client wilt verwijderen.
Clientgeheimen beheren
Mogelijk moet u een clientgeheim toevoegen of verwijderen als bijvoorbeeld een clientgeheim wordt aangetast of als uw beveiligingsbeleid vereist dat u het clientgeheim regelmatig bijwerkt. U kunt ook meerdere clientgeheimen toevoegen om downtime in de app te voorkomen. U kunt bijvoorbeeld een tweede geheim maken, het nieuwe geheim implementeren in uw clienttoepassing en vervolgens het oude geheim verwijderen.
Doe het volgende:
- In het Beheer-activiteitencentrum gaat u OAuth.
- Selecteer de OAuth-client die u wilt beheren. Klik op ... en selecteer vervolgens Geheimen beheren.
- Voer in het dialoogvenster een van de volgende handelingen uit:
- Als u een nieuw clientgeheim wilt toevoegen, klikt u op Een nieuw clientgeheim genereren.
- Als u een clientgeheim wilt verwijderen, klikt u op naast het clientgeheim.
- Klik op Sluiten.
Een OAuth-clienttoepassing 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 eigen OAuth-clienttoepassing. In de sectie OAuth van de Developer portal zijn zelfstudies beschikbaar voor het bouwen van clientapplicaties met behulp van enkele van de populairste codeertalen.