Vai al contenuto principale Passa a contenuto complementare

Creazione e gestione di client OAuth

OAuth è un protocollo di sicurezza standard per l'autorizzazione e la delega. Permette alle applicazioni di terze parti di accedere alle risorse API senza rivelare le credenziali dell'utente finale. Un client OAuth può ottenere un codice di autorizzazione e scambiarlo per un token di accesso utilizzabile per accedere ai contenuti di Qlik Cloud tramite le API.

Tipi di client OAuth

Un client OAuth è un'applicazione web o un software che richiede l'accesso alle risorse in Qlik Cloud per conto di un utente. OAuth definisce due tipi di client, i client pubblici e i client confidenziali, per rendere sicure le autorizzazioni tra un'applicazione (il client) e il server di autorizzazione (Qlik Cloud).

Qlik Cloud supporta i client confidenziali per le applicazioni web tradizionali (lato server) e i client pubblici per le applicazioni native e a pagina singola che utilizzano flussi di autorizzazione specifici.

Per le specifiche ufficiali di OAuth 2.0 sui tipi di client, vedere la Sezione RFC 6749 2.1: tipi di client OAuth 2.0.

Client pubblici

I client pubblici sono applicazioni che non utilizzano un segreto client perché non possono mantenere la confidenzialità delle credenziali richieste. In Qlik Cloud, questi includono applicazioni front-end come le applicazioni a pagina singola (SPA) con analisi incorporate o estensioni di visualizzazione personalizzate in Qlik Sense, che richiedono l'autenticazione dell'utente.

Client confidenziali

I client riservati possono memorizzare in modo sicuro un ID client e un segreto cliente e utilizzarli per autenticarsi con il server di autorizzazione. Questi client possono accedere a risorse protette poiché sono in possesso del segreto client.

Esempio: un'applicazione web con un backend sicuro che interagisce con le API di Qlik Cloud per gestire l'accesso degli utenti ai contenuti o organizzare le attività di aggiornamento dei dati.

Flussi di autorizzazione OAuth

Qlik supporta due flussi di autorizzazione (tipi di concessione):

  • Flusso del codice di autorizzazione: per i client riservati.

  • Flusso del codice di autorizzazione con chiave di prova per lo scambio di codici (PKCE): per i client pubblici

Flusso codice di autorizzazione

Questo flusso è utilizzato dalle applicazioni lato server in cui il codice sorgente non è esposto pubblicamente. Comporta lo scambio di un codice di autorizzazione per un token di accesso, con il segreto client utilizzato per l'autenticazione. Le applicazioni web che usano questo flusso devono essere lato server, perché il segreto client viene passato al server di autorizzazione durante lo scambio del token.

Nota informaticaNon condividere mai pubblicamente il segreto client, perché può compromettere la sicurezza del tenant. Mantenerlo privato e al sicuro.

Per ulteriori informazioni sul flusso del codice di autorizzazione, consultare la documentazione ufficiale di OAuth 2.0: Flusso del codice di autorizzazione.

Flusso del codice di autorizzazione con PKCE

Le applicazioni native e a pagina singola non possono memorizzare in modo sicuro il segreto client, perché il relativo codice sorgente può essere decompilato o ispezionato in un browser. Il PKCE aumenta la sicurezza richiedendo l'uso di un sistema di verifica dei codici per ottenere un token di accesso.

Per ulteriori informazioni sull'autorizzazione con PKCE, consultare la documentazione ufficiale di OAuth 2.0: Flusso codice di autorizzazione con chiave di prova per lo scambio di codici (PKCE).

Ambiti e permessi di OAuth

Gli ambiti OAuth definiscono il livello di accesso concesso alle applicazioni client OAuth. Ad esempio, un token di accesso può consentire l'accesso completo alle risorse o limitarlo all'accesso in sola lettura. In Qlik Cloud, gli ambiti controllano l'accesso del client alle funzionalità e risorse disponibili. Senza ambiti, i client non possono accedere ad alcuna risorsa.

Scopi OAuth disponibili

La tabella elenca gli ambiti disponibili e le autorizzazioni ad essi associate:

Ambito Autorizzazione
user_default Accesso completo all'account e ai contenuti personali
admin_classic

Accesso amministratore completo al tenant

Vedere anche: Distribuzione e amministrazione Qlik Cloud

Nota informaticaNon supportato con i tipi di client App pagina singola o Nativo.
admin.apps

Visualizza e gestisce tutte le app nel tenant.

Vedere anche: Gestione delle app

Indica un elemento figlio admin.apps:export

Esporta tutte le app nel tenant

Vedere anche: Esportazione di app

Indica un elemento figlio admin.apps:read

Visualizza tutte le app nel tenant
admin.automations

Visualizza e gestisci tutte le automazioni nel tenant

Vedere anche: Gestione delle automazioni

Indica un elemento figlio admin.automations:read

Visualizza tutte le automazioni nel tenant
admin.spaces

Visualizza e gestisce tutti gli spazi nel tenant

Vedere anche: Gestione degli spazi

Indica un elemento figlio admin.spaces:read

Visualizza tutti gli spazi nel tenant
app

Visualizza e gestisci app personali

Vedere anche: Gestione delle app

Indica un elemento figlio apps:export

Esporta app personali

Vedere anche: Esportazione di app

Indica un elemento figlio apps:read

Visualizza app personali
automazioni

Visualizza e gestisci automazioni personali

Vedere anche: Gestione delle automazioni

Indica un elemento figlio automations:read

Visualizza automazioni personali
automl-experiments Visualizza e gestisci esperimenti ML personali
automl-distribuzione Visualizza e gestisci distribuzioni ML personali
identity.email:read

Visualizza indirizzo e-mail personale

Vedere anche: Provider di identità in Qlik Cloud

identity.name:read

Visualizza nome personale completo
identity.picture:read

Visualizza immagine profilo personale

Vedere anche: Provider di identità in Qlik Cloud

identity.subject:read

Visualizza identificatore oggetto utente personale
spaces.data

Visualizza e gestisci spazi dati personali

Vedere anche: Gestione degli spazi

Indica un elemento figlio spaces.data:read

Visualizza spazi dati personali
spaces.managed

Visualizza e gestisci spazi gestiti personali

Vedere anche: Gestione degli spazi

Indica un elemento figlio spaces.managed:read

Visualizza spazi gestiti personali
spaces.shared

Visualizza e gestisci spazi condivisi personali

Vedere anche: Gestione degli spazi

Indica un elemento figlio spaces.shared:read

Visualizza spazi condivisi personali
offline_access

Accedi alle risorse in modalità offline

Nota informaticaNon supportato con il tipo di client App pagina singola.
Nota informaticaL'elenco riflette gli ambiti supportati nella versione iniziale. È possibile trovare un elenco completo degli ambiti sul portale per sviluppatori di Qlik, alla voce Ambiti OAuth.

Creazione di client OAuth

Gli amministrati tenant gestiscono i client OAuth nel centro attività Amministrazione sulla pagina OAuth. Con un client OAuth, è possibile integrare la propria applicazione client con Qlik Cloud per accedere alle risorse in modo sicuro.

Limiti per i client OAuth

Si applicano i seguenti limiti:

  • Un massimo di 5 URL di reindirizzamento per client.

  • Un massimo di 5 origini consentite per client.

  • Un massimo di 5 segreti client per client.

  • Un massimo di 200 client OAuth per tenant.

Passaggi per la creazione di un client OAuth

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.

  2. Fare clic su Crea nuovo.

  3. Selezionare un tipo di client:

    • Web per i client riservati.

    • App pagina singola o Nativa per i client pubblici.

  4. Nella finestra di dialogo, assegnare un nome al client OAuth.

  5. In via opzionale, aggiungere una descrizione.

  6. Selezionare uno degli ambiti disponibili scorrendo l'elenco o utilizzando il campo di ricerca.

    Nota di suggerimentoUtilizzare i pulsanti Tutti e Selezionati per visualizzare per visualizzare tutti gli ambiti o solo quelli selezionati.
  7. Inserire uno o più URL di reindirizzamento per l'applicazione client OAuth (per un massimo di 5). Quindi, fare clic su Aggiungi per aggiungere l'URL di reindirizzamento alla allowlist.

    • L'URL di reindirizzamento è dove il server di autorizzazione invia il browser dell'utente dopo aver autenticato correttamente e concesso l'autorizzazione all'applicazione client. Per esempio, https://www.exampleapp.com/oauth/callback, dove /oauth/callback gestisce i richiami di autenticazione dal provider OAuth.

    • Qlik Cloud reindirizzerà l'utente all'applicazione dopo un'autorizzazione riuscita solo se il relativo URL è nell'elenco degli URL di reindirizzamento consentito.

    • Gli URL devono iniziare con https:// a meno che il dominio sia localhost, nel qual caso può iniziare con http://. Le app native possono inoltre usare il formato del collegamento specifico per l'app, ad esempio, exampleapp://.

  8. Per i tipi di client Web o App a pagina singola, specificare una o più origini consentite (5 al massimo).

    • L'accesso all'applicazione verrà consentito solamente se l'URL viene aggiunto all'elenco delle origini consentite.

  9. Per il tipo di client Web, è possibile attivare una delle seguenti opzioni per l'accesso automatico al sistema senza l'interazione dell'utente:

    • Consenti Machine-to-Machine (M2M): consente la comunicazione da sistema a sistema senza il coinvolgimento dell'utente.

    • Consenti rappresentazione utente con M2M: consente all'applicazione dell'utente di autenticarsi per conto degli utenti, agendo come loro durante il processo di autenticazione.

  10. Fare clic su Crea.

  11. Fare clic su Copia negli appunti per salvare l'ID client e il segreto client per un utilizzo futuro. Archiviare il segreto client in modo sicuro.

    Nota informaticaI client pubblici non hanno un segreto client.
  12. Fare clic su Fine.

Client OAuth per casi d'uso specifici

Per i casi d'uso del client OAuth, fare riferimento alle seguenti risorse:

Creazione di un client OAuth per il componente aggiuntivo di Qlik per Microsoft Excel

La configurazione di un client OAuth è richiesta per installare il componente aggiuntivo di Qlik per Microsoft Excel. Il componente aggiuntivo viene utilizzato dagli sviluppatori dei report per preparare modelli di report che consentono di controllare l'output dei report tabular dall'app Qlik Sense.

Per fare in modo che OAuth funzioni correttamente nel componente aggiuntivo, èe necessario configurare il client OAuth utilizzando la configurazione esatta mostrata sotto.

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, in Qlik Cloud, andare a Impostazioni.

  2. Fare clic su Crea nuovo.

  3. Nel menu a comparsa Tipo di client, selezionare App pagina singola. Verranno visualizzati ulteriori campi.

  4. Inserire un Nome. L'opzione Descrizione è facoltativa.

  5. Come minimo, selezionare la casella di controllo per includere l'ambito user_default. È possibile aggiungere anche altri ambiti nella configurazione, ma se non si include user_default, l'installazione non funzionerà.

    Per una descrizione completa di ogni ambito disponibile, vedere Scopi OAuth disponibili.

  6. Nel campo Aggiungi URL di reindirizzamento, inserire l'URL del tenant, seguito dalla stringa con valore fisso: /office-add-ins/oAuthLoginSuccess.html

    Il risultato dovrebbe essere simile a questo: https://YourServer/office-add-ins/oAuthLoginSuccess.html

  7. Fare clic su Aggiungi.

  8. Nel campo Aggiungi origini consentite, inserire l'URL del tenant e fare clic su Aggiungi.

  9. Fare clic su Crea.

  10. Viene visualizzata la finestra Copia il tuo ID client. È possibile scegliere di copiare l'ID del client negli appunti; oppure, fare clic su Fine per chiudere la finestra

Una volta creato il client OAuth, scaricare il collegamento al file XML manifesto dal centro attività Amministrazione. Andare alla pagina Impostazioni, quindi andare a Condivisione e reportcomponente aggiuntivo Excel nel centro attività Amministrazione. Utilizzare il collegamento per distribuire e installare il componente aggiuntivo.

Per maggiori informazioni sulla generazione del file manifesto e sulla distribuzione e installazione del componente aggiuntivo, vedere:

Creazione di un client OAuth per l'incorporamento anonimo dei contenuti dell'app

Per incorporare i contenuti dell'app per l'accesso anonimo tramite qlik-embed, è necessario creare un client OAuth con un tipo specificamente progettato per questo caso d'uso.

Nota informatica Questa funzionalità è disponibile solo con una sottoscrizione a Qlik Anonymous Access. Per ulteriori informazioni, vedere Sottoscrizioni a Qlik Anonymous Access.

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare alla sezione OAuth.

  2. Fare clic su Crea nuovo.

  3. Nel menu a comparsa Tipo di client, selezionare Incorpora in modo anonimo.

  4. Inserire un Nome e, facoltativamente, una Descrizione per il client OAuth.

  5. In Origini consentite, inserire ogni origine da autorizzare. Questi sono i domini che accederanno al tenant Qlik Cloud per recuperare le informazioni per le analisi incorporate.

    Fare clic su Aggiungi dopo aver inserito ogni URL.

  6. Una volta terminato, fare clic su Crea.

  7. Fare clic su Copia negli appunti per salvare l'ID client per un utilizzo futuro. Questo è necessario quando il contenuto dell'app viene incorporato con qlik-embed.

  8. Fare clic su Fine.

Modifica dei client OAuth

È possibile rinominare un client OAuth, aggiornare la descrizione o gestire gli URL di reindirizzamento.

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.
  2. Individuare il client OAuth che si desidera modificare.
  3. Fare clic su Altro, quindi selezionare Modifica.
  4. Modificare le opzioni per il client OAuth come richiesto.
  5. Fare clic su Salva.

Eliminazione dei client OAuth

È possibile eliminare un client OAuth quando non è più necessario, oppure revocarne l'accesso.

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.

  2. Selezionare uno o più client OAuth che si desidera rimuovere, quindi fare clic su Elimina.

  3. Confermare l'eliminazione.

Pubblicazione di client OAuth

I client OAuth sono inizialmente associati al tenant che li ha creati. Tuttavia, è possibile configurare un client OAuth da condividere tra più tenant all'interno nella stessa regione. Ciò consente alle applicazioni di terze parti di utilizzare lo stesso ID client in diversi tenant di Qlik Cloud.

I proprietari dell'applicazione possono effettuare la rotazione dei segreti e aggiornare la configurazione senza interazione da parte di un amministratore tenant. Gli amministratori tenant non devono gestire le credenziali o essere a conoscenza dei dettagli di configurazione per il client pubblicato.

Per consentire agli altri tenant di connettersi a un client OAuth, è necessario pubblicarlo.

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.
  2. Individuare il client OAuth che si desidera pubblicare.
  3. Fare clic su Altro accanto al client e selezionare Pubblica.
  4. Fare clic su Pubblica per confermare.

Una volta pubblicato il client OAuth, diventa disponibile per l'uso esterno da parte di altri tenant. Quando un utente visita un sito web esterno che utilizza questo client OAuth, gli viene chiesto di inserire il nome host del tenant e le proprie credenziali utente, a meno che l'utente non abbia già una sessione SaaS attiva.

Il login iniziale richiederà il consenso da parte di un amministratore del tenant. Una volta approvato, il client OAuth apparirà nel centro attività Amministrazione del tenant.

Metodi di consenso

Per impostazione predefinita, Qlik Cloud chiede agli utenti il consenso al momento dell'autenticazione. Per semplificare il processo, soprattutto per le applicazioni attendibili, è possibile impostare il metodo di consenso su "Attendibile", che salta la richiesta di consenso.

Sono disponibili due opzioni per il consenso:

  • Richiesto: all'utente viene chiesto di fornire l'autorizzazione ogni volta che viene richiesto un nuovo ambito per l'utente tramite il client OAuth. Questo metodo garantisce l'approvazione esplicita dell'utente per ogni livello di accesso.

  • Attendibile: all'utente non viene richiesto di fornire il proprio consenso. Questa opzione è disponibile solo per i client non pubblicati. Per i client che sono stati pubblicati, viene sempre utilizzato il metodo di consenso Richiesto per mantenere la sicurezza su più tenant.

Nota informaticaPer i client utilizzati come Machine-to-Machine (M2M), il metodo di consenso deve essere modificato in Attendibile dopo la creazione del client.

Modifica del metodo di consenso

Per modificare il metodo di consenso per un client OAuth, fare quanto segue:

  1. Nel centro attività Amministrazione, andare a OAuth.
  2. Sul client OAuth, fare clic su Altro e selezionare Cambia metodo di consenso.
  3. Selezionare Richiesto o Attendibile, quindi fare clic su Cambia metodo di consenso.

Visualizzazione e copia della configurazione OAuth

Nella sezione OAuth del centro attività di Amministrazione, selezionare Visualizza configurazione OAuth per visualizzare i dati di autenticazione per il tenant Qlik Cloud. Verrà visualizzato uno snippet di codice con gli endpoint e le impostazioni OAuth, oltre a un URL che è possibile copiare per utilizzarlo in applicazioni esterne.

È possibile utilizzare questa configurazione per integrare Qlik Cloud con applicazioni di terze parti, automatizzare l'accesso alle API o configurare l'autenticazione per l'analisi incorporata.

Gestione dei segreti client

Se un segreto del client viene compromesso o se la politica di sicurezza della propria organizzazione richiede aggiornamenti periodici, è possibile aggiungere o rimuovere segreti. Per evitare i tempi di inattività, è possibile aggiungere più segreti del cliente (un massimo di 5), aggiornare l'applicazione client e poi rimuovere il vecchio segreto.

Aggiunta di un segreto client

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.
  2. Individuare il client OAuth.
  3. Fare clic su Altro, quindi selezionare Gestisci segreti.
  4. Fare clic su Genera un nuovo segreto client.
  5. Copiare il segreto client e l'ID del client e conservarli in modo sicuro.

    Nota informaticaNon sarà possibile accedere al segreto client successivamente.
  6. Fare clic su Chiudi.

Rimozione di un segreto client

Procedere come indicato di seguito:

  1. Nel centro attività Amministrazione, andare a OAuth.
  2. Individuare il client OAuth.
  3. Fare clic su Altro, quindi selezionare Gestisci segreti.
  4. Fare clic su Elimina accanto al segreto client.
  5. Fare clic su Chiudi.

Creazione di applicazioni client OAuth per accedere a Qlik Cloud

Dopo aver registrato un client OAuth con Qlik Cloud, è possibile utilizzare l'ID client associato e il segreto client nella propria applicazione client OAuth.

Per una guida passo passo, vedere i tutorial nella sezione Panoramica di OAuth del Portale per sviluppatori di Qlik. Questi tutorial spiegano come creare applicazioni client utilizzando i linguaggi di programmazione più diffusi.

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!