Configura la federazione delle identità della forza lavoro con Microsoft Entra ID e fai accedere gli utenti

Questo documento mostra come configurare la federazione delle identità per la forza lavoro con il provider di identità (IdP) Microsoft Entra ID e gestire l'accesso aGoogle Cloud. Gli utenti federati possono quindi accedere ai servizi Google Cloud che supportano la federazione delle identità per la forza lavoro. Puoi utilizzare il protocollo OIDC o SAML 2.0 per federare le identità.

Prima di iniziare

  1. Assicurati di aver configurato un'organizzazione Google Cloud .
  2. Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:

    gcloud init

    Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  3. In Microsoft Entra ID, assicurati che i token ID siano abilitati per il flusso implicito. Per maggiori informazioni, vedi Abilitare la concessione implicita del token ID.
  4. Per l'accesso, l'IdP deve fornire informazioni di autenticazione firmate: gli IdP OIDC devono fornire un JWT e le risposte degli IdP SAML devono essere firmate.
  5. Per ricevere informazioni importanti sulle modifiche alla tua organizzazione o ai Google Cloud prodotti, devi fornire i contatti essenziali. Per ulteriori informazioni, consulta la panoramica della federazione delle identità per la forza lavoro.

Costi

La federazione delle identità per la forza lavoro è disponibile come funzionalità senza costi. Tuttavia, l'audit logging dettagliato della federazione delle identità per la forza lavoro utilizza Cloud Logging. Per informazioni sui prezzi di Logging, consulta Prezzi di Google Cloud Observability.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare la federazione delle identità per la forza lavoro, chiedi all'amministratore di concederti il ruolo IAM Amministratore pool di identità della forza lavoro IAM (roles/iam.workforcePoolAdmin) nell'organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Se stai configurando le autorizzazioni in un ambiente di sviluppo o di test, ma non in un ambiente di produzione, puoi concedere il ruolo di base Proprietario IAM (roles/owner), che include anche le autorizzazioni per la federazione delle identità per la forza lavoro.

Crea un'applicazione Microsoft Entra ID

Questa sezione mostra come creare un'applicazione Microsoft Entra ID utilizzando il portale di amministrazione Microsoft Entra. In alternativa, puoi aggiornare la tua applicazione esistente. Per ulteriori dettagli, vedi Stabilire applicazioni nell'ecosistema Microsoft Entra ID.

I pool di identità della forza lavoro supportano la federazione utilizzando i protocolli OIDC e SAML.

OIDC

Per creare una registrazione dell'applicazione Microsoft Entra ID che utilizza il protocollo OIDC, svolgi i seguenti passaggi:

  1. Accedi al centro di amministrazione di Microsoft Entra.

  2. Vai alla pagina Panoramica della registrazione dell'applicazione Microsoft Entra ID.

  3. Vai a Entra ID > Registrazioni app.

  4. Per iniziare a configurare la registrazione dell'applicazione:

    1. Fai clic su Nuova registrazione.

    2. Inserisci un nome per l'applicazione.

    3. In Supported account types (Tipi di account supportati), seleziona un'opzione.

    4. Nella sezione Redirect URI (URI di reindirizzamento), seleziona Web nell'elenco a discesa Seleziona una piattaforma.

    5. Nel campo di testo, inserisci un URL di reindirizzamento. Gli utenti vengono reindirizzati a questo URL dopo aver eseguito l'accesso. Se stai configurando l'accesso alla console (federata), utilizza il seguente formato URL:

      https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
      

      Sostituisci quanto segue:

      • WORKFORCE_POOL_ID: un ID pool di identità della forza lavoro che utilizzerai quando creerai il pool di identità della forza lavoro più avanti in questo documento, ad esempio: entra-id-oidc-pool

      • WORKFORCE_PROVIDER_ID: un ID provider del pool di identità della forza lavoro che utilizzerai quando crei il provider del pool di identità della forza lavoro più avanti in questo documento, ad esempio entra-id-oidc-pool-provider

        Per informazioni sulla formattazione dell'ID, consulta la sezione Parametri di query nella documentazione dell'API.

    6. Per creare la registrazione dell'applicazione, fai clic su Registra.

    7. Per utilizzare la mappatura degli attributi di esempio fornita più avanti in questo documento, devi creare un attributo department personalizzato.

Consigliato: come best practice per la sicurezza, ti consigliamo di configurare un'attestazione di gruppo procedendo nel seguente modo:

  1. Vai alla registrazione dell'applicazione Microsoft Entra ID.

  2. Fai clic su Configurazione token.

  3. Fai clic su Aggiungi rivendicazione dei gruppi.

  4. Seleziona i tipi di gruppo da restituire. Per maggiori dettagli, consulta Configurazione delle rivendicazioni facoltative dei gruppi.

SAML

Per creare una registrazione dell'applicazione Microsoft Entra ID che utilizza il protocollo SAML, segui questi passaggi:

  1. Accedi al portale di amministrazione di Microsoft Entra.

  2. Nel menu di navigazione a sinistra, vai a Entra ID > App aziendali.

  3. Per iniziare a configurare l'applicazione aziendale:

    1. Fai clic su Nuova applicazione > Crea la tua applicazione.

    2. Nel riquadro Crea la tua applicazione visualizzato, inserisci un nome per l'applicazione.

    3. Fai clic su Crea.

    4. Vai a Single Sign-On > SAML.

    5. Aggiorna la Basic SAML Configuration (Configurazione SAML di base) nel seguente modo:

      1. Nel campo Identifier (Entity ID) (Identificatore (ID entità)), inserisci il seguente valore:

        https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Sostituisci quanto segue:

        • WORKFORCE_POOL_ID: un ID pool di identità della forza lavoro che utilizzerai quando creerai il pool di identità della forza lavoro più avanti in questo documento, ad esempio: entra-id-saml-pool
        • WORKFORCE_PROVIDER_ID: un ID provider del pool di identità della forza lavoro che utilizzerai quando crei il provider del pool di identità della forza lavoro più avanti in questo documento, ad esempio: entra-id-saml-pool-provider

          Per informazioni sulla formattazione dell'ID, consulta la sezione Parametri di query nella documentazione dell'API.

      2. Nel campo URL di risposta (URL Assertion Consumer Service), inserisci un URL di reindirizzamento. I tuoi utenti vengono reindirizzati a questo URL dopo aver eseguito l'accesso. Se stai configurando l'accesso alla console (federata), utilizza il seguente formato URL:

        https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Sostituisci quanto segue:

        • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro
        • WORKFORCE_PROVIDER_ID: l'ID del provider di identità della forza lavoro
      3. Per attivare l'accesso avviato da IdP, imposta il campo Relay State sul seguente valore:

        https://console.cloud.google/
        
      4. Per salvare la configurazione dell'applicazione SAML, fai clic su Salva.

    6. Per utilizzare la mappatura degli attributi di esempio fornita più avanti in questo documento, devi creare un attributo department personalizzato.

Consigliato: come best practice per la sicurezza, ti consigliamo di configurare un'attestazione di gruppo procedendo nel seguente modo:

  1. Vai all'applicazione Microsoft Entra ID.

  2. Fai clic su Single sign-on.

  3. Nella sezione Attributi e rivendicazioni, fai clic su Modifica.

  4. Fai clic su Aggiungi un'attestazione di gruppo.

  5. Seleziona il tipo di gruppo da restituire. Per maggiori dettagli, consulta Aggiungere attestazioni di gruppo ai token per le applicazioni SAML utilizzando la configurazione SSO.

Crea un pool di identità per la forza lavoro

gcloud

Per creare il pool di identità per la forza lavoro, esegui questo comando:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Sostituisci quanto segue:

  • WORKFORCE_POOL_ID: un ID che scegli per rappresentare il tuo pool di forza lavoro. Google Cloud L'ID pool deve essere univoco a livello globale in tutti i pool di identità della forza lavoro in Google Cloud. Per informazioni sulla formattazione dell'ID, consulta la sezione Parametri di query nella documentazione dell'API.
  • ORGANIZATION_ID: l'ID organizzazione numerico della tua organizzazione Google Cloud per il pool di identità della forza lavoro. I pool di identità della forza lavoro sono disponibili in tutti i progetti e nelle cartelle dell'organizzazione.
  • DISPLAY_NAME: (Facoltativo) Un nome visualizzato per il tuo pool di identità della forza lavoro.
  • DESCRIPTION: (Facoltativo) Una descrizione del pool di identità della forza lavoro.
  • SESSION_DURATION: (Facoltativo) La durata della sessione, espressa come numero a cui è stato aggiunto s, ad esempio 3600s. La durata della sessione determina per quanto tempo sono validi i token di accesso Google Cloud , le sessioni di accesso alla console (federata) e le sessioni di accesso a gcloud CLI da questo pool di forza lavoro. Per impostazione predefinita, la durata della sessione è di un'ora (3600 secondi). Il valore della durata della sessione deve essere compreso tra 15 minuti (900 secondi) e 12 ore (43.200 secondi).

Console

Per creare il pool di identità per la forza lavoro:

  1. Nella console Google Cloud , vai alla pagina Pool di identità per la forza lavoro:

    Vai a Pool di identità per la forza lavoro

  2. Seleziona l'organizzazione per il pool di identità della forza lavoro. I pool di identità del personale sono disponibili in tutti i progetti e le cartelle di un'organizzazione.

  3. Fai clic su Crea pool e segui questi passaggi:

    1. Nel campo Nome, inserisci il nome visualizzato del pool. L'ID pool viene derivato automaticamente dal nome durante la digitazione e viene visualizzato nel campo Nome. Puoi aggiornare l'ID pool facendo clic su Modifica accanto all'ID pool.

    2. (Facoltativo) In Descrizione, inserisci una descrizione del pool.

    3. Per creare il pool di identità per la forza lavoro, fai clic su Avanti.

La durata della sessione del pool di identità della forza lavoro è impostata su un'ora (3600 secondi) per impostazione predefinita. La durata della sessione determina per quanto tempo sono validi i Google Cloud token di accesso, le sessioni di accesso alla console (federata) e a gcloud CLI da questo pool di forza lavoro. Dopo aver creato il pool, puoi aggiornarlo per impostare una durata della sessione personalizzata. La durata della sessione deve essere compresa tra 15 minuti (900 secondi) e 12 ore (43.200 secondi).

Crea il provider del pool di identità per la forza lavoro Microsoft Entra ID

Questa sezione descrive come creare un provider del pool di identità per la forza lavoro per consentire agli utenti del tuo IdP di accedere a Google Cloud. Puoi configurare il provider in modo che utilizzi il protocollo OIDC o SAML.

Crea un provider di pool di identità per la forza lavoro OIDC

Per creare un provider del pool di identità per la forza lavoro per l'integrazione dell'applicazione Microsoft Entra ID utilizzando il protocollo OIDC, segui questi passaggi:

  1. Per ottenere l'URI dell'emittente per l'applicazione Microsoft Entra ID:

    1. Vai alla pagina Panoramica della registrazione dell'applicazione Microsoft Entra ID.
    2. Fai clic su Endpoint.
    3. Apri il documento di metadati OpenID Connect in una nuova scheda.
    4. Nel codice JSON, copia il valore di issuer.
  2. Per ottenere l'ID client per l'applicazione Microsoft Entra ID:

    1. Vai alla pagina Panoramica della registrazione dell'applicazione Microsoft Entra ID.
    2. Fai clic su Endpoint.
    3. In ID applicazione (client), copia il valore.
  3. Per creare un provider di pool di identità per la forza lavoro OIDC per l'accesso basato sul web, procedi nel seguente modo:

    gcloud

    Per creare un provider che supporti il protocollo OIDC:

    Flusso codice

    Per creare un provider OIDC che utilizza il flusso del codice di autorizzazione per l'accesso basato sul web, segui questi passaggi:

    1. Nella tua applicazione Microsoft Entra ID, per ottenere il client secret:

      1. Vai alla registrazione dell'app Microsoft Entra ID.

      2. In Certificates & secrets (Certificati e secret), fai clic sulla scheda Client secrets (Client secret).

      3. Per aggiungere un client secret, fai clic su + Nuovo client secret.

      4. Nella finestra di dialogo Aggiungi un client secret, inserisci le informazioni necessarie.

      5. Per creare il client secret, fai clic su Aggiungi.

      6. Nella scheda Client secret, trova il nuovo client secret.

      7. Nella colonna Valore del nuovo client secret, fai clic su Copia.

    2. Nella console Google Cloud , per creare un provider OIDC che utilizza il flusso di codice, segui questi passaggi:

      gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
          --workforce-pool=WORKFORCE_POOL_ID \
          --display-name="DISPLAY_NAME" \
          --description="DESCRIPTION" \
          --issuer-uri="ISSUER_URI" \
          --client-id="OIDC_CLIENT_ID" \
      --client-secret-value="OIDC_CLIENT_SECRET" \ --web-sso-response-type="code" \ --web-sso-assertion-claims-behavior="merge-user-info-over-id-token-claims" \ --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --jwk-json-path="JWK_JSON_PATH" \ --detailed-audit-logging \ --location=global

      Sostituisci quanto segue:

      • WORKFORCE_PROVIDER_ID: un ID univoco del provider del pool di identità della forza lavoro. Il prefisso gcp- è riservato e non può essere utilizzato in un ID pool di identità della forza lavoro o provider di pool di identità della forza lavoro.
      • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro a cui connettere il tuo IdP.
      • DISPLAY_NAME: Un nome visualizzato facoltativo e intuitivo per il fornitore, ad esempio idp-eu-employees.
      • DESCRIPTION: una descrizione facoltativa del fornitore di forza lavoro, ad esempio IdP for Partner Example Organization employees.
      • ISSUER_URI: l'URI dell'emittente OIDC, in un formato URI valido, che inizia con https; ad esempio, https://example.com/oidc. Nota: per motivi di sicurezza, ISSUER_URI deve utilizzare lo schema HTTPS.
      • OIDC_CLIENT_ID: l'ID client OIDC registrato con il tuo IdP OIDC; l'ID deve corrispondere all'attestazione aud del JWT emesso dal tuo IdP.
      • OIDC_CLIENT_SECRET: il client secret OIDC.
      • WEB_SSO_ADDITIONAL_SCOPES: ambiti aggiuntivi facoltativi da inviare all'IdP OIDC per l'accesso basato sul browser alla console (federata) o a gcloud CLI.
      • ATTRIBUTE_MAPPING: una mappatura degli attributi. Per Microsoft Entra ID con autenticazione OIDC, consigliamo i seguenti mapping degli attributi:

        google.subject=assertion.oid,
        google.groups=assertion.groups,
        google.display_name=assertion.preferred_username
        

        Questo esempio mappa gli attributi IdP assertion.oid, assertion.groups e assertion.preferred_username agli attributi Google Cloud google.subject, google.groups e google.display_name, rispettivamente.

      • ATTRIBUTE_CONDITION: una condizione dell'attributo; ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.ipaddr.startsWith('98.11.12.') .
      • JWK_JSON_PATH: un percorso facoltativo per un JWK OIDC caricato localmente. Se questo parametro non viene fornito, Google Cloud utilizza invece il percorso /.well-known/openid-configuration del tuo IdP per recuperare i JWK contenenti le chiavi pubbliche. Per saperne di più sulle chiavi JWK OIDC caricate localmente, consulta Gestire le chiavi JWK OIDC.
      • La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

        Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

      Nella risposta al comando, POOL_RESOURCE_NAME è il nome del pool; ad esempio, locations/global/workforcePools/enterprise-example-organization-employees.

    Flusso implicito

    Per creare un provider OIDC che utilizza il flusso implicito per l'accesso web:

    1. Per attivare il token ID nell'applicazione Microsoft Entra ID, procedi nel seguente modo:

      1. Vai alla registrazione dell'applicazione Microsoft Entra ID.
      2. In Autenticazione, seleziona la casella di controllo Token ID.
      3. Fai clic su Salva.
    2. Per creare il provider, esegui questo comando:

      gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
          --workforce-pool=WORKFORCE_POOL_ID \
          --display-name="DISPLAY_NAME" \
          --description="DESCRIPTION" \
          --issuer-uri="ISSUER_URI" \
          --client-id="OIDC_CLIENT_ID" \
          --web-sso-response-type="id-token" \
          --web-sso-assertion-claims-behavior="only-id-token-claims" \
          --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \
          --attribute-mapping="ATTRIBUTE_MAPPING" \
          --attribute-condition="ATTRIBUTE_CONDITION" \
          --jwk-json-path="JWK_JSON_PATH" \
          --detailed-audit-logging \
          --location=global
      

      Sostituisci quanto segue:

      • WORKFORCE_PROVIDER_ID: un ID univoco del provider del pool di identità della forza lavoro. Il prefisso gcp- è riservato e non può essere utilizzato in un ID pool di identità della forza lavoro o provider di pool di identità della forza lavoro.
      • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro a cui connettere il tuo IdP.
      • DISPLAY_NAME: Un nome visualizzato facoltativo e intuitivo per il fornitore, ad esempio idp-eu-employees.
      • DESCRIPTION: una descrizione facoltativa del fornitore di forza lavoro, ad esempio IdP for Partner Example Organization employees.
      • ISSUER_URI: l'URI dell'emittente OIDC, in un formato URI valido, che inizia con https; ad esempio, https://example.com/oidc. Nota: per motivi di sicurezza, ISSUER_URI deve utilizzare lo schema HTTPS.
      • OIDC_CLIENT_ID: l'ID client OIDC registrato con il tuo IdP OIDC; l'ID deve corrispondere all'attestazione aud del JWT emesso dal tuo IdP.
      • WEB_SSO_ADDITIONAL_SCOPES: ambiti aggiuntivi facoltativi da inviare all'IdP OIDC per l'accesso basato sul browser alla console (federata) o a gcloud CLI.
      • ATTRIBUTE_MAPPING: una mappatura degli attributi. Per Microsoft Entra ID con autenticazione OIDC, consigliamo i seguenti mapping degli attributi:

        google.subject=assertion.oid,
        google.groups=assertion.groups,
        google.display_name=assertion.preferred_username
        

        Questo esempio mappa gli attributi IdP assertion.oid, assertion.groups e assertion.preferred_username agli attributi Google Cloud google.subject, google.groups e google.display_name, rispettivamente.

      • ATTRIBUTE_CONDITION: una condizione dell'attributo; ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.ipaddr.startsWith('98.11.12.') .
      • JWK_JSON_PATH: un percorso facoltativo per un JWK OIDC caricato localmente. Se questo parametro non viene fornito, Google Cloud utilizza invece il percorso /.well-known/openid-configuration del tuo IdP per recuperare i JWK contenenti le chiavi pubbliche. Per saperne di più sulle chiavi JWK OIDC caricate localmente, consulta Gestire le chiavi JWK OIDC.
      • La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

        Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

      Nella risposta al comando, POOL_RESOURCE_NAME è il nome del pool; ad esempio, locations/global/workforcePools/enterprise-example-organization-employees.

    Console

    Flusso codice

    Per creare un provider OIDC che utilizza il flusso del codice di autorizzazione per l'accesso basato sul web, segui questi passaggi:

    1. Per ottenere il client secret di Microsoft Entra ID:

      1. Vai alla registrazione dell'app Microsoft Entra ID.

      2. In Certificates & secrets (Certificati e secret), fai clic sulla scheda Client secrets (Client secret).

      3. Per aggiungere un client secret, fai clic su + Nuovo client secret.

      4. Nella finestra di dialogo Aggiungi un client secret, inserisci le informazioni necessarie.

      5. Per creare il client secret, fai clic su Aggiungi.

      6. Nella scheda Client secret, trova il nuovo client secret.

      7. Nella colonna Valore del nuovo client secret, fai clic su Copia.

    2. Nella console Google Cloud , per creare un provider OIDC che utilizza il flusso del codice di autorizzazione, segui questi passaggi:

      1. Nella console Google Cloud , vai alla pagina Pool di identità per la forza lavoro:

        Vai a Pool di identità per la forza lavoro

      2. Nella tabella Pool di identità per la forza lavoro, seleziona il pool per cui vuoi creare il provider.
      3. Nella sezione Fornitori, fai clic su Aggiungi fornitore.
      4. Nell'elenco Seleziona un fornitore di provider, seleziona il tuo IdP.

        Se il tuo IdP non è elencato, seleziona Provider di identità generico.

      5. In Seleziona un protocollo di autenticazione, seleziona OpenID Connect (OIDC).
      6. Nella sezione Crea un fornitore, segui questi passaggi:
        1. In Nome, inserisci il nome del provider.
        2. In Descrizione, inserisci la descrizione del fornitore.
        3. In Emittente (URL), inserisci l'URI emittente. L'URI dell'emittente OIDC deve essere in un formato URI valido e iniziare con https; ad esempio, https://example.com/oidc.
        4. In ID client, inserisci l'ID client OIDC registrato con il tuo IdP OIDC; l'ID deve corrispondere all'attestazione aud del JWT emesso dal tuo IdP.
        5. Per creare un provider abilitato, assicurati che l'opzione Abilita provider sia attiva.
        6. Fai clic su Continua.
      7. Nella sezione Condividi le informazioni del tuo provider con l'IdP, copia l'URL. Nel tuo IdP, configura questo URL come URI di reindirizzamento, che indica all'IdP dove inviare il token di asserzione dopo l'accesso.
      8. Fai clic su Continua.
      9. Nella sezione Configura l'accesso web OIDC, segui questi passaggi:
        1. Nell'elenco Tipo di flusso, seleziona Codice.
        2. Nell'elenco Comportamento delle rivendicazioni di asserzione, seleziona una delle seguenti opzioni:
          • Informazioni utente e token ID
          • Solo token ID
        3. Nel campo Client secret, inserisci il client secret del tuo IdP.
        4. (Facoltativo) Se hai selezionato Okta come IdP, aggiungi eventuali ambiti OIDC aggiuntivi nel campo Ambiti aggiuntivi oltre a openid, profile ed email.
      10. Fai clic su Continua.
      11. In Configura provider, puoi configurare una mappatura degli attributi e una condizione degli attributi. Per creare una mappatura degli attributi: Puoi fornire il nome del campo IdP o un'espressione formattata in CEL che restituisce una stringa.
        1. Obbligatorio: in OIDC 1, inserisci il soggetto dell'IdP, ad esempio assertion.sub. Per Microsoft Entra ID con autenticazione OIDC, consigliamo i seguenti mapping degli attributi:

          google.subject=assertion.oid,
          google.groups=assertion.groups,
          google.display_name=assertion.preferred_username
          

          Questo esempio mappa gli attributi IdP assertion.oid, assertion.groups e assertion.preferred_username agli attributi Google Cloud google.subject, google.groups e google.display_name, rispettivamente.

        2. (Facoltativo) Per aggiungere mappature degli attributi aggiuntive:
          1. Fai clic su Aggiungi mappatura.
          2. In Google n, dove n è un numero, inserisci uno dei tasti supportati daGoogle Cloud.
          3. Nel campo OIDC n corrispondente, inserisci il nome del campo specifico del fornitore di identità da mappare, in formato CEL.
        3. Per aumentare il numero di gruppi, procedi nel seguente modo:
          1. Seleziona Usa attributi aggiuntivi.
          2. Nel campo URI emittente attributi aggiuntivi, inserisci l'URL dell'emittente.
          3. Nel campo ID client attributi aggiuntivi, inserisci l'ID client.
          4. Nel campo Client secret attributi aggiuntivi, inserisci il client secret.
          5. Nell'elenco Tipo di attributi aggiuntivi, seleziona un tipo di attributo per gli attributi aggiuntivi.
          6. Nel campo Filtro attributi aggiuntivi, inserisci un'espressione di filtro utilizzata quando si esegue una query sull'API Microsoft Graph per i gruppi.
        4. Per creare una condizione dell'attributo, procedi nel seguente modo:
          1. Fai clic su Aggiungi condizione.
          2. Nel campo Condizioni degli attributi, inserisci una condizione in formato CEL; ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.ipaddr.startsWith('98.11.12.').
        5. Per attivare il logging dettagliato degli audit, in Logging dettagliato, fai clic sul pulsante di attivazione/disattivazione Abilita l'audit logging dei valori degli attributi.

          La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

          Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

      12. Per creare il fornitore, fai clic su Invia.

    Flusso implicito

    Per creare un provider OIDC che utilizza il flusso implicito per l'accesso basato sul web, segui questi passaggi:

    1. Per attivare il token ID nell'applicazione Microsoft Entra ID, procedi nel seguente modo:

      1. Vai alla registrazione dell'applicazione Microsoft Entra ID.
      2. In Autenticazione, seleziona la casella di controllo Token ID.
      3. Fai clic su Salva.

    1. Nella console Google Cloud , vai alla pagina Pool di identità per la forza lavoro:

      Vai a Pool di identità per la forza lavoro

    2. Nella tabella Pool di identità per la forza lavoro, seleziona il pool per cui vuoi creare il provider.
    3. Nella sezione Fornitori, fai clic su Aggiungi fornitore.
    4. Nell'elenco Seleziona un fornitore di provider, seleziona il tuo IdP.

      Se il tuo IdP non è elencato, seleziona Provider di identità generico.

    5. In Seleziona un protocollo di autenticazione, seleziona OpenID Connect (OIDC).
    6. Nella sezione Crea un fornitore, segui questi passaggi:
      1. In Nome, inserisci il nome del provider.
      2. In Descrizione, inserisci la descrizione del fornitore.
      3. In Emittente (URL), inserisci l'URI emittente. L'URI dell'emittente OIDC deve essere in un formato URI valido e iniziare con https; ad esempio, https://example.com/oidc.
      4. In ID client, inserisci l'ID client OIDC registrato con il tuo IdP OIDC; l'ID deve corrispondere all'attestazione aud del JWT emesso dal tuo IdP.
      5. Per creare un provider abilitato, assicurati che l'opzione Abilita provider sia attiva.
      6. Fai clic su Continua.
    7. Nella sezione Condividi le informazioni del tuo provider con l'IdP, copia l'URL. Nel tuo IdP, configura questo URL come URI di reindirizzamento, che indica all'IdP dove inviare il token di asserzione dopo l'accesso.
    8. Fai clic su Continua.
    9. Nella sezione Configura l'accesso web OIDC, segui questi passaggi:
      1. Nell'elenco Tipo di flusso, seleziona Token ID.
      2. Nell'elenco Comportamento delle rivendicazioni di asserzione, è selezionato Token ID.
      3. (Facoltativo) Se hai selezionato Okta come IdP, aggiungi eventuali ambiti OIDC aggiuntivi nel campo Ambiti aggiuntivi oltre a openid, profile ed email.
    10. Fai clic su Continua.
    11. In Configura provider, puoi configurare una mappatura degli attributi e una condizione degli attributi. Per creare una mappatura degli attributi: Puoi fornire il nome del campo IdP o un'espressione formattata in CEL che restituisce una stringa.
      1. Obbligatorio: in OIDC 1, inserisci il soggetto dell'IdP, ad esempio assertion.sub. Per Microsoft Entra ID con autenticazione OIDC, consigliamo i seguenti mapping degli attributi:

        google.subject=assertion.oid,
        google.groups=assertion.groups,
        google.display_name=assertion.preferred_username
        

        Questo esempio mappa gli attributi IdP assertion.oid, assertion.groups e assertion.preferred_username agli attributi Google Cloud google.subject, google.groups e google.display_name, rispettivamente.

      2. (Facoltativo) Per aggiungere mappature degli attributi aggiuntive:
        1. Fai clic su Aggiungi mappatura.
        2. In Google n, dove n è un numero, inserisci uno dei tasti supportati daGoogle Cloud.
        3. Nel campo OIDC n corrispondente, inserisci il nome del campo specifico del fornitore di identità da mappare, in formato CEL.
      3. Per aumentare il numero di gruppi, procedi nel seguente modo:
        1. Seleziona Usa attributi aggiuntivi.
        2. Nel campo URI emittente attributi aggiuntivi, inserisci l'URL dell'emittente.
        3. Nel campo ID client attributi aggiuntivi, inserisci l'ID client.
        4. Nel campo Client secret attributi aggiuntivi, inserisci il client secret.
        5. Nell'elenco Tipo di attributi aggiuntivi, seleziona un tipo di attributo per gli attributi aggiuntivi.
        6. Nel campo Filtro attributi aggiuntivi, inserisci un'espressione di filtro utilizzata quando si esegue una query sull'API Microsoft Graph per i gruppi.
      4. Per creare una condizione dell'attributo, procedi nel seguente modo:
        1. Fai clic su Aggiungi condizione.
        2. Nel campo Condizioni degli attributi, inserisci una condizione in formato CEL; ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.ipaddr.startsWith('98.11.12.').
      5. Per attivare il logging dettagliato degli audit, in Logging dettagliato, fai clic sul pulsante di attivazione/disattivazione Abilita l'audit logging dei valori degli attributi.

        La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

        Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

    12. Per creare il fornitore, fai clic su Invia.

Crea un provider di pool di identità per la forza lavoro SAML 2.0

  1. Nel tuo IdP SAML, registra una nuova applicazione per la federazione delle identità per la forza lavoro Google Cloud.

  2. Imposta il pubblico per le asserzioni SAML. Di solito è il campo SP Entity ID nella configurazione dell'IdP. Devi impostarlo sul seguente URL:

    https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
    
  3. Imposta l'URL di reindirizzamento, noto anche come URL Assertion Consumer Service (ACS). Per impostare l'URL di reindirizzamento, individua il campo dell'URL di reindirizzamento nel tuo IdP SAML ed esegui una delle seguenti operazioni:

    • Per configurare l'accesso basato sul browser tramite la console Google Cloud o un altro metodo di accesso basato sul browser, inserisci il seguente URL:

      https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
      

      Sostituisci quanto segue:

      • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro

      • WORKFORCE_PROVIDER_ID: l'ID del provider del pool di identità della forza lavoro che creerai più avanti in questo documento.

    • Per configurare l'accesso programmatico tramite il tuo IdP, inserisci il seguente URL:

      localhost
      

    Per ulteriori dettagli sulla configurazione dell'accesso alla console, consulta Configurare l'accesso utente alla console.

  4. In Google Cloud, crea un provider di identità della forza lavoro SAML utilizzando il documento dei metadati SAML del tuo IdP. Puoi scaricare il documento XML dei metadati SAML dal tuo IdP. Il documento deve includere almeno quanto segue:

    • Un ID entità SAML per il tuo IdP.
    • L'URL Single Sign-On per il tuo IdP.
    • Almeno una chiave pubblica di firma. Per informazioni dettagliate sulle chiavi di firma, consulta la sezione Requisiti delle chiavi più avanti in questa guida.

  1. Per configurare l'applicazione SAML:

    gcloud

    Per salvare i metadati SAML per l'applicazione Microsoft Entra ID:

    1. Vai all'applicazione Microsoft Entra ID.
    2. Fai clic su Single sign-on.
    3. Nella sezione Certificati SAML, scarica il file XML dei metadati di federazione.
    4. Salva i metadati come file XML locale.

    Per creare il fornitore del pool di identità per la forza lavoro SAML, esegui il seguente comando:

    gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \
      --workforce-pool="WORKFORCE_POOL_ID" \
      --display-name="DISPLAY_NAME" \
      --description="DESCRIPTION" \
      --idp-metadata-path="XML_METADATA_PATH" \
      --attribute-mapping="ATTRIBUTE_MAPPING" \
      --attribute-condition="ATTRIBUTE_CONDITION" \
      --detailed-audit-logging \
      --location=global
    

    Sostituisci quanto segue:

    • WORKFORCE_PROVIDER_ID: un ID fornitore.
    • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro.
    • DISPLAY_NAME: un nome visualizzato.
    • DESCRIPTION: Una descrizione.
    • XML_METADATA_PATH: il percorso del file di metadati in formato XML con i metadati di configurazione per il provider di identità SAML.
    • ATTRIBUTE_MAPPING: la mappatura degli attributi, ad esempio:

      google.subject=assertion.oid
      attribute.costcenter=assertion.attributes.costcenter[0]
      Questo esempio mappa gli attributi IdP assertion.oid e assertion.attributes.costcenter[0] agli attributi Google Cloud google.subject e attribute.costcenter, rispettivamente.

    Per saperne di più, vedi Mappatura degli attributi.

    • ATTRIBUTE_CONDITION: una condizione dell'attributo facoltativa. Ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.attributes.ipaddr.startsWith('98.11.12.'). Questa condizione di esempio garantisce che solo gli utenti con un indirizzo IP che inizia con 98.11.12. possano accedere utilizzando questo provider di forza lavoro.

    • La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

      Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

    (Facoltativo) Accetta le asserzioni SAML criptate dal tuo IdP

    Per consentire al tuo IdP SAML 2.0 di produrre asserzioni SAML criptate che possono essere accettate dalla federazione delle identità per la forza lavoro, procedi nel seguente modo:

    • Nella federazione delle identità per la forza lavoro, procedi nel seguente modo:
      • Crea una coppia di chiavi asimmetriche per il provider del pool di identità per la forza lavoro.
      • Scarica un file di certificato contenente la chiave pubblica.
      • Configura l'IdP SAML in modo che utilizzi la chiave pubblica per criptare le asserzioni SAML che emette.
    • Nel tuo IdP:
      • Attiva la crittografia delle asserzioni, nota anche come crittografia dei token.
      • Carica la chiave pubblica che hai creato nella federazione delle identità per la forza lavoro.
      • Verifica che l'IdP produca asserzioni SAML criptate.
    Tieni presente che, anche con le chiavi del fornitore di crittografia SAML configurate, la federazione delle identità per la forza lavoro può comunque elaborare un'asserzione in testo non crittografato.

    Crea chiavi di crittografia dell'asserzione SAML della federazione delle identità per la forza lavoro

    Questa sezione ti guida nella creazione di una coppia di chiavi asimmetriche che consente alla federazione delle identità per la forza lavoro di accettare asserzioni SAML criptate.

    Google Cloud utilizza la chiave privata per decriptare le asserzioni SAML emesse dal tuo IdP. Per creare una coppia di chiavi asimmetriche da utilizzare con la crittografia SAML, esegui il seguente comando. Per saperne di più, consulta Algoritmi di crittografia SAML supportati.

    gcloud iam workforce-pools providers keys create KEY_ID \
        --workforce-pool WORKFORCE_POOL_ID \
        --provider WORKFORCE_PROVIDER_ID \
        --location global \
        --use encryption \
        --spec KEY_SPECIFICATION

    Sostituisci quanto segue:

    • KEY_ID: un nome di chiave a tua scelta
    • WORKFORCE_POOL_ID: l'ID del pool
    • WORKFORCE_PROVIDER_ID: l'ID provider del pool di identità della forza lavoro
    • KEY_SPECIFICATION: la specifica della chiave, che può essere rsa-2048, rsa-3072 o rsa-4096.

    Dopo aver creato la coppia di chiavi, esegui il seguente comando per scaricare la chiave pubblica in un file di certificato. Solo la federazione delle identità per la forza lavoro ha accesso alla chiave privata.

    gcloud iam workforce-pools providers keys describe KEY_ID \
        --workforce-pool WORKFORCE_POOL_ID \
        --provider WORKFORCE_PROVIDER_ID \
        --location global \
        --format "value(keyData.key)" \
        > CERTIFICATE_PATH

    Sostituisci quanto segue:

    • KEY_ID: il nome della chiave
    • WORKFORCE_POOL_ID: l'ID del pool
    • WORKFORCE_PROVIDER_ID: l'ID provider del pool di identità della forza lavoro
    • CERTIFICATE_PATH: il percorso in cui scrivere il certificato, ad esempio saml-certificate.cer o saml-certificate.pem

    Configurare l'IdP conforme a SAML 2.0 per emettere asserzioni SAML criptate

    Per configurare Microsoft Entra ID in modo da criptare i token SAML, vedi Configurare la crittografia dei token SAML di Azure Active Directory.

    Dopo aver configurato l'IdP per criptare le asserzioni SAML, ti consigliamo di verificare che le asserzioni generate siano effettivamente criptate. Anche con la crittografia delle asserzioni SAML configurata, la federazione delle identità per la forza lavoro può comunque elaborare le asserzioni in testo non crittografato.

    Elimina le chiavi di crittografia della federazione delle identità per la forza lavoro

    Per eliminare le chiavi di crittografia SAML, esegui questo comando:
      gcloud iam workforce-pools providers keys delete KEY_ID \
          --workforce-pool WORKFORCE_POOL_ID \
          --provider WORKFORCE_PROVIDER_ID \
          --location global

    Sostituisci quanto segue:

    • KEY_ID: il nome della chiave
    • WORKFORCE_POOL_ID: l'ID del pool
    • WORKFORCE_PROVIDER_ID: l'ID provider del pool di identità della forza lavoro

    Algoritmi di crittografia SAML supportati

    La federazione delle identità per la forza lavoro supporta i seguenti algoritmi di trasporto delle chiavi:

    La federazione delle identità per la forza lavoro supporta i seguenti algoritmi di crittografia a blocchi:

    Console

    Per configurare il provider SAML utilizzando la console Google Cloud :

    1. Nella console Google Cloud , vai alla pagina Pool di identità per la forza lavoro:

      Vai a Pool di identità per la forza lavoro

    2. Nella tabella Pool di identità per la forza lavoro, seleziona il pool per cui vuoi creare il provider.
    3. Nella sezione Fornitori, fai clic su Aggiungi fornitore.
    4. Nell'elenco Seleziona un fornitore di provider, seleziona il tuo IdP.

      Se il tuo IdP non è elencato, seleziona Provider di identità generico.

    5. In Select an authentication protocol (Seleziona un protocollo di autenticazione), seleziona SAML.
    6. Nella sezione Crea un fornitore, segui questi passaggi:
      1. In Nome, inserisci un nome per il provider.
      2. (Facoltativo) In Descrizione, inserisci una descrizione del fornitore.
      3. In File di metadati IDP (XML), seleziona il file XML dei metadati che hai generato in precedenza in questa guida.
      4. Per creare un provider abilitato, assicurati che l'opzione Abilita provider sia attiva.
      5. Fai clic su Continua.
    7. Nella sezione Condividi le informazioni del provider, copia gli URL. Nel tuo IdP, configura il primo URL come ID entità, che identifica la tua applicazione per l'IdP. Configura l'altro URL come URI di reindirizzamento, che indica all'IdP dove inviare il token di asserzione dopo l'accesso.
    8. Fai clic su Continua.
    9. Nella sezione Configura provider, segui questi passaggi:
      1. In Mappatura degli attributi, inserisci un'espressione CEL per google.subject.
      2. (Facoltativo) Per inserire altre mappature, fai clic su Aggiungi mappatura e inserisci altre mappature, ad esempio:
        google.subject=assertion.oid
        attribute.costcenter=assertion.attributes.costcenter[0]
        Questo esempio mappa gli attributi IdP assertion.oid e assertion.attributes.costcenter[0] agli attributi Google Cloud google.subject e attribute.costcenter, rispettivamente.
      3. Per aumentare il numero di gruppi, procedi nel seguente modo:
        1. Seleziona Usa attributi aggiuntivi.
        2. Nel campo URI emittente attributi aggiuntivi, inserisci l'URL dell'emittente.
        3. Nel campo ID client attributi aggiuntivi, inserisci l'ID client.
        4. Nel campo Client secret attributi aggiuntivi, inserisci il client secret.
        5. Nell'elenco Tipo di attributi aggiuntivi, seleziona un tipo di attributo per gli attributi aggiuntivi.
        6. Nel campo Filtro attributi aggiuntivi, inserisci un'espressione di filtro utilizzata quando si esegue una query sull'API Microsoft Graph per i gruppi.
      4. (Facoltativo) Per aggiungere una condizione per attributo, fai clic su Aggiungi condizione e inserisci un'espressione CEL che rappresenti una condizione per attributo. Ad esempio, per limitare l'attributo ipaddr a un determinato intervallo IP, puoi impostare la condizione assertion.attributes.ipaddr.startsWith('98.11.12.'). Questa condizione di esempio garantisce che solo gli utenti con un indirizzo IP che inizia con 98.11.12. possano accedere utilizzando questo provider di forza lavoro.
      5. Fai clic su Continua.
      6. Per attivare il logging dettagliato degli audit, in Logging dettagliato, fai clic sul pulsante di attivazione/disattivazione Abilita l'audit logging dei valori degli attributi.

        La registrazione dettagliata dei log di controllo della federazione delle identità per la forza lavoro registra le informazioni ricevute dal tuo IdP in Logging. La registrazione dettagliata degli audit può aiutarti a risolvere i problemi di configurazione del provider del pool di identità della forza lavoro. Per scoprire come risolvere i problemi relativi agli errori di mappatura degli attributi con la registrazione di controllo dettagliata, vedi Errori generali di mappatura degli attributi. Per informazioni sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.

        Per disabilitare la registrazione di controllo dettagliata per un provider di pool di identità per la forza lavoro, ometti il flag --detailed-audit-logging quando esegui gcloud iam workforce-pools providers create. Per disattivare il logging di controllo dettagliato, puoi anche aggiornare il fornitore.

    10. Per creare il fornitore, fai clic su Invia.

Verificare la configurazione del provider

Prima di testare il flusso di accesso per gli utenti finali, puoi verificare che la configurazione del provider sia corretta e che Google Cloud possa scambiare token con il tuo IdP.

La pagina Convalida gli attributi del fornitore nella console Google Cloud include un visualizzatore di attributi che ti consente di testare in modo interattivo la configurazione ed eseguire il debug delle espressioni Common Expression Language (CEL). Puoi utilizzare il visualizzatore degli attributi per:

  • Visualizza gli attributi non elaborati inviati nell'asserzione IdP.
  • Verifica che i mapping e le condizioni degli attributi trasformino correttamente gli attributi.
  • Esegui il debug di espressioni CEL complesse in tempo reale.

Per verificare la configurazione del provider:

  1. Per attivare il flusso di accesso basato sul browser per la federazione delle identità per la forza lavoro, aggiungi https://auth.cloud.google/signin-callback/locations/global/workforcePools/POOL_ID/providers/PROVIDER_ID all'elenco degli URI di reindirizzamento consentiti del tuo IdP.
  2. Nella console Google Cloud , vai a Pool di identità per la forza lavoro.

    Vai a Pool di identità per la forza lavoro
  3. Nell'elenco dei pool, fai clic sul nome del pool che vuoi verificare.
  4. Nella pagina Dettagli del pool di forza lavoro, fai clic sul nome dell'IdP che vuoi verificare.
  5. Nella pagina Dettagli del provider, fai clic su Debug token IdP.
  6. Nella finestra di dialogo Accedi, accedi al tuo IdP come utente di test.

La pagina Convalida gli attributi del provider mostra gli attributi mappati e il risultato della condizione dell'attributo.

La sezione Attributi mappati dal token IdP mostra come gli attributi Google, ad esempio google.subject, vengono compilati dal token dell'IdP in base alla configurazione della mappatura. Se un mapping non è corretto, viene visualizzata un'icona di errore.

La sezione Condizione attributo mostra il risultato booleano della tua condizione. Se la condizione restituisce false, l'accesso viene bloccato.

Per visualizzare il token di asserzione completo, fai clic su Visualizza token completo. Viene visualizzato l'oggetto JSON non elaborato del tuo IdP. Fai riferimento a una proprietà di primo livello nelle mappature utilizzando il formato assertion.PROPERTY_NAME.

Modificare la configurazione del provider

Per correggere eventuali errori, puoi modificare la configurazione:

  1. Nella pagina Convalida gli attributi del provider, fai clic su Modifica.
  2. Apporta le modifiche necessarie.
  3. Per avviare un nuovo test e visualizzare i risultati aggiornati, fai clic su Salva e recupera di nuovo il token.

Gestire l'accesso alle risorse Google Cloud

Questa sezione fornisce un esempio che mostra come gestire l'accesso alle risorseGoogle Cloud da parte degli utenti della federazione delle identità per la forza lavoro.

In questo esempio, concedi un ruolo Identity and Access Management (IAM) a un progetto di esempio. Gli utenti possono quindi accedere e utilizzare questo progetto per accedere ai prodotti Google Cloud .

Puoi gestire i ruoli IAM per singole identità, un gruppo di identità o un intero pool. Per ulteriori informazioni, consulta Rappresentare gli utenti del pool di identità della forza lavoro nelle policy IAM.

Utilizzo dei gruppi mappati

Per concedere il ruolo Amministratore Storage (roles/storage.admin) a tutte le identità all'interno del gruppo GROUP_ID per il progetto TEST_PROJECT_ID, esegui questo comando:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"

Sostituisci quanto segue:

  • TEST_PROJECT_ID: l'ID progetto di test
  • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro
  • GROUP_ID: un gruppo nella rivendicazione google.groups mappata.

Per una singola identità

Per concedere il ruolo Storage Admin (roles/storage.admin) a una singola identità per il progetto TEST_PROJECT_ID, esegui il seguente comando:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/SUBJECT_VALUE"

Sostituisci quanto segue:

  • TEST_PROJECT_ID: l'ID progetto di test
  • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro
  • SUBJECT_VALUE: l'identità utente

Utilizzo dell'attributo reparto mappato

Per concedere il ruolo Amministratore Storage (roles/storage.admin) a tutte le identità all'interno di un reparto specifico per il progetto TEST_PROJECT_ID, esegui questo comando:

   gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/attribute.department/DEPARTMENT_VALUE"

Sostituisci quanto segue:

  • TEST_PROJECT_ID: l'ID progetto di test
  • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro
  • DEPARTMENT_VALUE: il valore attribute.department mappato

Accedi e verifica l'accesso

In questa sezione, accedi come utente del pool di identità per la forza lavoro e verifica di avere accesso alle risorse Google Cloud .

Accedi

Questa sezione mostra come accedere come utente federato e accedere Google Cloud alle risorse.

Accesso alla console (federata)

Per accedere alla console Google Cloud federata di Workforce Identity Federation, segui questi passaggi:

  1. Vai alla pagina di accesso alla console (federata).

    Vai alla console (federata)

  2. Inserisci il nome del fornitore, formattato come segue:
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
  3. Se richiesto, inserisci le credenziali utente in Microsoft Entra ID.

    Se avvii un accesso avviato da IdP, utilizza il seguente URL di reindirizzamento: https://console.cloud.google/.

Accesso basato sul browser gcloud CLI

Per accedere a gcloud CLI utilizzando un flusso di accesso basato sul browser, segui questi passaggi:

Creare un file di configurazione

Per creare il file di configurazione di accesso, esegui questo comando. Se vuoi, puoi attivare il file come predefinito per gcloud CLI aggiungendo il flag --activate. Puoi quindi eseguire gcloud auth login senza specificare il percorso del file di configurazione ogni volta.

gcloud iam workforce-pools create-login-config \
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/PROVIDER_ID \
    --output-file=LOGIN_CONFIG_FILE_PATH

Sostituisci quanto segue:

  • WORKFORCE_POOL_ID: l'ID pool di forza lavoro
  • PROVIDER_ID: l'ID fornitore
  • LOGIN_CONFIG_FILE_PATH: il percorso di un file di configurazione che specifichi, ad esempio login.json

Il file contiene gli endpoint utilizzati da gcloud CLI per attivare il flusso di autenticazione basato su browser e impostare il pubblico sul provider di identità configurato nel provider del pool di identità della forza lavoro. Il file non contiene informazioni riservate.

L'output è simile al seguente:

{
  "type": "external_account_authorized_user_login_config",
  "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
  "auth_url": "https://auth.cloud.google/authorize",
  "token_url": "https://sts.googleapis.com/v1/oauthtoken",
  "token_info_url": "https://sts.googleapis.com/v1/introspect"
}

Per impedire a gcloud auth login di utilizzare automaticamente questo file di configurazione, puoi annullarne l'impostazione eseguendo gcloud config unset auth/login_config_file.

Accedere utilizzando l'autenticazione basata sul browser

Per eseguire l'autenticazione utilizzando l'autenticazione di accesso basata sul browser, puoi utilizzare uno dei seguenti metodi:

  • Se hai utilizzato il flag --activate quando hai creato il file di configurazione o se hai attivato il file di configurazione con gcloud config set auth/login_config_file, gcloud CLI utilizza automaticamente il file di configurazione:

    gcloud auth login
  • Per accedere specificando la posizione del file di configurazione, esegui il seguente comando:

    gcloud auth login --login-config=LOGIN_CONFIG_FILE_PATH
  • Per utilizzare una variabile di ambiente per specificare la posizione del file di configurazione, imposta CLOUDSDK_AUTH_LOGIN_CONFIG_FILE sul percorso di configurazione.

Disattivare l'accesso basato sul browser

Per interrompere l'utilizzo del file di configurazione dell'accesso:

  • Se hai utilizzato il flag --activate quando hai creato il file di configurazione o se hai attivato il file di configurazione con gcloud config set auth/login_config_file, devi eseguire il seguente comando per annullarne l'impostazione:

    gcloud config unset auth/login_config_file
  • Cancella la variabile di ambiente CLOUDSDK_AUTH_LOGIN_CONFIG_FILE, se è impostata.

Accesso headless gcloud CLI

Per accedere a Microsoft Entra ID con gcloud CLI, segui questi passaggi:

OIDC

  1. Segui i passaggi descritti in Inviare la richiesta di accesso. Accedi all'applicazione con Microsoft Entra ID utilizzando OIDC.

  2. Copia il token ID dal parametro id_token dell'URL di reindirizzamento e salvalo in un file in una posizione sicura sulla tua macchina locale. In un passaggio successivo, imposterai PATH_TO_OIDC_ID_TOKEN sul percorso di questo file.

  3. Genera un file di configurazione simile all'esempio riportato più avanti in questo passaggio eseguendo il seguente comando:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:id_token \
        --credential-source-file=PATH_TO_OIDC_ID_TOKEN \
        --workforce-pool-user-project=WORKFORCE_POOL_USER_PROJECT \
        --output-file=config.json
    

    Sostituisci quanto segue:

    • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro.
    • WORKFORCE_PROVIDER_ID: l'ID provider del pool di identità della forza lavoro.
    • PATH_TO_OIDC_ID_TOKEN: il percorso della posizione del file in cui è archiviato il token IdP.
    • WORKFORCE_POOL_USER_PROJECT: il numero o l'ID progetto utilizzato per la quota e la fatturazione. Il principal deve disporre dell'autorizzazione serviceusage.services.use per questo progetto.

    Al termine del comando, Microsoft Entra ID crea il seguente file di configurazione:

    {
      "type": "external_account",
      "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
      "subject_token_type": "urn:ietf:params:oauth:token-type:id_token",
      "token_url": "https://sts.googleapis.com/v1/token",
      "workforce_pool_user_project": "WORKFORCE_POOL_USER_PROJECT",
      "credential_source": {
        "file": "PATH_TO_OIDC_CREDENTIALS"
      }
    }
    
  4. Apri gcloud CLI ed esegui il comando seguente:

    gcloud auth login --cred-file=PATH_TO_OIDC_CREDENTIALS
    

    Sostituisci PATH_TO_OIDC_CREDENTIALS con il percorso del file di output di un passaggio precedente.

    gcloud CLI pubblica in modo trasparente le tue credenziali nell'endpoint del servizio token di sicurezza. Nell'endpoint, viene scambiato con token di accesso Google Cloud temporanei.

    Ora puoi eseguire i comandi gcloud CLI per Google Cloud.

SAML

  1. Accedi a un utente nell'applicazione Microsoft Entra ID e ottieni la risposta SAML.

  2. Salva la risposta SAML restituita da Microsoft Entra ID in una posizione sicura sul tuo computer locale, quindi memorizza il percorso nel seguente modo:

    SAML_ASSERTION_PATH=SAML_ASSERTION_PATH
    
  3. Per generare un file di configurazione delle credenziali, esegui questo comando:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:saml2 \
        --credential-source-file=SAML_ASSERTION_PATH  \
        --workforce-pool-user-project=PROJECT_ID  \
        --output-file=config.json
    

    Sostituisci quanto segue:

    • WORKFORCE_PROVIDER_ID: l'ID del provider del pool di identità della forza lavoro che hai creato in precedenza in questa guida
    • WORKFORCE_POOL_ID: l'ID del pool di identità della forza lavoro che hai creato in precedenza in questa guida
    • SAML_ASSERTION_PATH: il percorso del file di asserzione SAML
    • PROJECT_ID: l'ID progetto

    Il file di configurazione generato è simile al seguente:

    {
       "type": "external_account",
       "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
       "subject_token_type": "urn:ietf:params:oauth:token-type:saml2",
       "token_url": "https://sts.googleapis.com/v1/token",
       "credential_source": {
         "file": "SAML_ASSERTION_PATH"
       },
       "workforce_pool_user_project": "PROJECT_ID"
    }
    
  4. Per accedere a gcloud CLI utilizzando lo scambio di token della federazione delle identità per la forza lavoro, esegui questo comando:

    gcloud auth login --cred-file=config.json
    

    gcloud CLI scambia in modo trasparente le tue credenziali Microsoft Entra ID con token di accesso Google Cloud temporanei. I token di accesso ti consentono di accedere a Google Cloud.

    Vedrai un output simile al seguente:

    Authenticated with external account user credentials for:
    [principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_ID].
  5. Per elencare gli account con credenziali e il tuo account attivo, esegui questo comando:

    gcloud auth list
    

Testa l'accesso

Ora hai accesso ai Google Cloud prodotti che supportano la federazione delle identità per la forza lavoro e a cui ti è stato concesso l'accesso. In precedenza in questo documento, hai concesso il ruolo Amministratore Storage (roles/storage.admin) a tutte le identità all'interno dell'identificatore di gruppo che hai specificato in gcloud projects add-iam-policy-binding per il progetto TEST_PROJECT_ID.

Ora puoi verificare di avere accesso elencando i bucket Cloud Storage.

Console (federata)

Per verificare di avere accesso utilizzando la console (federata), segui questi passaggi:

  • Vai alla pagina Cloud Storage.

    Vai a Cloud Storage

  • Verifica di poter visualizzare un elenco di bucket esistenti per TEST_PROJECT_ID.

gcloud CLI

Per verificare di avere accesso utilizzando gcloud CLI, puoi elencare i bucket e gli oggetti Cloud Storage per il progetto a cui hai accesso. Per farlo, esegui questo comando. L'entità deve disporre dell'autorizzazione serviceusage.services.use per il progetto specificato.

gcloud storage ls --project="TEST_PROJECT_ID"

Eliminare utenti

La federazione delle identità per la forza lavoro crea metadati e risorse utente per le identità utente federate. Se scegli di eliminare gli utenti nel tuo IdP, devi eliminare esplicitamente anche queste risorse in Google Cloud. Per farlo, consulta Eliminare gli utenti della federazione delle identità per la forza lavoro e i relativi dati.

Potresti notare che le risorse continuano a essere associate a un utente eliminato. Questo perché l'eliminazione dei metadati e delle risorse utente richiede un'operazione di lunga durata. Dopo aver avviato l'eliminazione dell'identità di un utente, i processi che l'utente ha avviato prima dell'eliminazione possono continuare a essere eseguiti fino al completamento o all'annullamento.

Passaggi successivi