Creazione di client OAuth per IAP

In questa pagina viene descritto come creare un client OAuth, necessario per abilitare IAP.

Creare un client OAuth

Con la console Google Cloud puoi creare un massimo di 36 client OAuth per ogni progetto. Puoi creare un massimo di 500 client OAuth per ogni progetto con Google Cloud CLI.

Console

Completa i seguenti passaggi per creare un client OAuth utilizzando la console Google Cloud.

  1. Configura la schermata per il consenso OAuth seguendo le istruzioni in Configurare la schermata per il consenso OAuth.

  2. Crea un client OAuth seguendo le istruzioni riportate in Configurare OAuth 2.0.

gcloud

Limitazioni note

Di seguito sono riportate le limitazioni per i client OAuth creati in modo programmatico utilizzando l'API:

  • I client OAuth creati dall'API possono essere modificati solo utilizzando l'API. Non puoi modificare un client OAuth utilizzando la console Google Cloud se è stato creato utilizzando l'API.
  • I client OAuth creati dall'API sono bloccati solo per l'utilizzo di IAP e, pertanto, l'API non consente alcun aggiornamento dell'URI di reindirizzamento o di altri attributi.
  • L'API non funziona sui client OAuth creati utilizzando la console Google Cloud.
  • Quando si utilizza l'API, sono consentiti solo 500 client OAuth per progetto.
  • I brand della schermata per il consenso OAuth creati tramite API hanno limitazioni specifiche. Per ulteriori informazioni, consulta la sezione.

Informazioni sui brand e sullo stato del branding

La schermata di consenso OAuth, che contiene informazioni di branding per gli utenti, è nota come brand. I brand possono essere limitati a utenti interni o pubblici. Un brand interno rende il flusso OAuth accessibile a qualcuno che appartiene alla stessa organizzazione Google Workspace del progetto. Un brand pubblico rende il flusso OAuth disponibile a chiunque su internet.

I brand possono essere creati manualmente o in modo programmatico utilizzando un'API. I brand creati utilizzando un'API vengono configurati automaticamente con le seguenti impostazioni:

  • Interno. Devi impostarlo manualmente come pubblico.

  • Non rivista. Devi attivare una revisione del brand.

Per impostare un brand interno come pubblico:

  1. Apri la schermata di consenso OAuth.
  2. Seleziona un progetto dal menu a discesa.
  3. Nella pagina Schermata consenso OAuth, tieni presente che il Tipo di utente viene impostato automaticamente su Interno. Per impostarla come Pubblica, fai clic su Modifica app. Sono disponibili altre opzioni di configurazione.
  4. In Tipo di applicazione, fai clic su Pubblica.

Per attivare la revisione di un brand creato tramite API non revisionato:

  1. Apri la schermata di consenso OAuth.
  2. Seleziona il progetto che ti interessa dal menu a discesa.
  3. Nella pagina della schermata di consenso OAuth, inserisci le informazioni richieste, quindi fai clic su Invia per la verifica.

La procedura di verifica può richiedere diverse settimane. Nel corso dell'elaborazione riceverai aggiornamenti via email. Scopri di più sulla verifica. Mentre la procedura di verifica è in corso, puoi comunque utilizzare l'applicazione all'interno della tua organizzazione Google Workspace. Scopri di più sul comportamento dell'applicazione prima della verifica.

Autorizzazioni obbligatorie

Prima di creare il client, assicurati che al chiamante siano state concesse le seguenti autorizzazioni:

  • clientauthconfig.brands.list
  • clientauthconfig.brands.create
  • clientauthconfig.brands.get
  • clientauthconfig.clients.create
  • clientauthconfig.clients.listWithSecrets
  • clientauthconfig.clients.getWithSecret
  • clientauthconfig.clients.delete
  • clientauthconfig.clients.update

Queste autorizzazioni sono incluse nei ruoli di base Editor (roles/editor) e Proprietario (roles/owner), ma consigliamo di creare un ruolo personalizzato che le contenga e di concederlo al chiamante.

Configurare OAuth per IAP

I passaggi seguenti descrivono come configurare la schermata di consenso e creare un client OAuth per IAP.

  1. Verifica se hai già un brand utilizzando il comando list. Puoi avere un solo brand per progetto.

    gcloud iap oauth-brands list
    

    Di seguito è riportato un esempio di risposta gcloud, se il brand esiste:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_ID]
    applicationTitle: [APPLICATION_TITLE]
    supportEmail: [SUPPORT_EMAIL]
    orgInternalOnly: true
    
  2. Se non esiste un brand, utilizza il comando create:

    gcloud iap oauth-brands create --application_title=APPLICATION_TITLE --support_email=SUPPORT_EMAIL
    

    I campi precedenti sono obbligatori quando si chiama questa API:

    • supportEmail: l'email dell'assistenza visualizzata nella schermata per il consenso OAuth. Questo indirizzo email può essere l'indirizzo di un utente o un alias di Google Gruppi. Sebbene gli account di servizio abbiano anche un indirizzo email, non sono indirizzi email validi e non possono essere utilizzati durante la creazione di un brand. Tuttavia, un account di servizio può essere il proprietario di un gruppo Google. Crea un nuovo gruppo Google o configurane uno esistente e imposta l'account di servizio desiderato come proprietario del gruppo.

    • applicationTitle: il nome dell'applicazione visualizzato nella schermata per il consenso OAuth.

    La risposta contiene i seguenti campi:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_ID]
    applicationTitle: [APPLICATION_TITLE]
    supportEmail: [SUPPORT_EMAIL]
    orgInternalOnly: true
    

Creazione di un client OAuth IAP

  1. Utilizza il comando create per creare un client. Utilizza il brand name del passaggio precedente.

    gcloud iap oauth-clients create projects/PROJECT_NUMBER/brands/BRAND-ID --display_name=NAME
    

    La risposta contiene i seguenti campi:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_NAME]/identityAwareProxyClients/[CLIENT_ID]
    secret: [CLIENT_SECRET]
    displayName: [NAME]