Questo documento è destinato agli amministratori dei cluster che hanno già configurato i propri cluster per GKE Identity Service. Fornisce istruzioni su come configurare e gestire l'accesso degli utenti a questi cluster configurati per gli sviluppatori e altri utenti della tua organizzazione.
Esistono due tipi di metodi di autenticazione che puoi utilizzare per configurare l'accesso degli utenti ai tuoi cluster:
- Configurazione con accesso FQDN (consigliata): con questo approccio, gli utenti possono autenticarsi direttamente sul server GKE Identity Service utilizzando il nome di dominio completo (FQDN) del server API Kubernetes del cluster. Per ulteriori informazioni, vedi Configurare l'accesso FQDN.
- Configurazione con accesso basato su file: con questo approccio, generi un file di configurazione dell'accesso e lo distribuisci agli utenti del cluster. Gli utenti possono quindi accedere ai cluster configurati con i comandi di autenticazione
gcloud
utilizzando questo file. Per ulteriori informazioni, vedi Configurare l'accesso basato su file.
Configurare l'accesso FQDN (consigliato)
Questa sezione spiega come configurare l'accesso di accesso degli utenti fornendo all'utente l'URL (FQDN) di un server da utilizzare per l'autenticazione. Il flusso di autenticazione consente all'utente di accedere con il proprio IdP e fornisce un token che viene aggiunto al file kubeconfig per accedere al cluster. Questo approccio di autenticazione è supportato solo per i cluster on-premise (Google Distributed Cloud) su VMware e bare metal, a partire dalla versione 1.29. Altri tipi di cluster non sono supportati. Se devi configurare l'autenticazione per cluster on-premise utilizzando una versione software precedente supportata o per altri tipi di cluster, segui le istruzioni per configurare l'accesso basato su file.
Prima di condividere l'FQDN con gli utenti, assicurati che tu o l'amministratore della piattaforma abbiate seguito la configurazione appropriata, inclusa la configurazione DNS per l'FQDN e la fornitura dell'FQDN nell'ambito della registrazione al tuo identity provider, se necessario.
Condividere l'FQDN con gli utenti
Invece di un file di configurazione, gli amministratori del cluster possono condividere il nome di dominio completo (FQDN) del server API Kubernetes del cluster, ad esempio https://apiserver.example.com
, con gli utenti. Gli utenti possono utilizzare questo FQDN per accedere al cluster.
Configura le opzioni di Identity Service
Con questa opzione di configurazione, puoi configurare la durata
del token. identityServiceOptions
in ClientConfig CR ha un
parametro sessionDuration
che consente di configurare la durata del token (in minuti).
Il parametro sessionDuration
ha un limite inferiore di 15 minuti e un limite massimo di 1440 minuti (24 ore).
Ecco un esempio di come appare nella CR ClientConfig:
spec:
identityServiceOptions:
sessionDuration: INT
dove INT è la durata della sessione in minuti.
Configurare l'accesso basato sui file
In alternativa all'accesso FQDN, gli amministratori del cluster possono generare un file di configurazione dell'accesso e distribuirlo agli utenti del cluster. Potresti voler utilizzare questa opzione se stai configurando l'autenticazione a un cluster con una versione o un tipo che non supporta l'accesso FQDN. Questo file consente agli utenti di accedere ai cluster dalla riga di comando con il provider scelto. Questo approccio di autenticazione è supportato solo per i provider OIDC e LDAP.
Genera la configurazione di accesso
Console
(Solo configurazione a livello di parco risorse)
Copia il comando gcloud
visualizzato ed eseguilo per generare il file.
gcloud
Se hai configurato il cluster utilizzando l'interfaccia a riga di comando gcloud
o se devi generare nuovamente il file, esegui il comando seguente per generarlo:
gcloud anthos create-login-config --kubeconfig=KUBECONFIG
dove KUBECONFIG
è il percorso del file kubeconfig per il cluster. Se in kubeconfig sono presenti più contesti, viene utilizzato il contesto attuale. Prima di eseguire il comando, potrebbe essere necessario reimpostare il contesto corrente sul cluster corretto.
Puoi visualizzare i dettagli di riferimento completi per questo comando, inclusi parametri facoltativi aggiuntivi, nella Guida di riferimento di Google Cloud CLI.
Il nome predefinito del file di configurazione di accesso è kubectl-anthos-config.yaml
, ovvero il nome previsto da Google Cloud CLI quando utilizzi il file per accedere. Se vuoi modificarlo con un nome non predefinito, consulta la sezione pertinente in Distribuire la configurazione di accesso.
Per informazioni sulla risoluzione dei problemi relativi all'accesso degli utenti, vedi Risolvere i problemi di accesso degli utenti.
Distribuire la configurazione di accesso
Di seguito sono riportati alcuni modi per distribuire il file di configurazione:
Ospita il file in un URL accessibile. Gli utenti possono specificare questa posizione con il flag
--login-config
quando eseguonogcloud anthos auth login
, consentendo a Google Cloud CLI di recuperare il file.Valuta la possibilità di ospitare il file su un host sicuro. Per saperne di più sull'utilizzo dei certificati PEM per l'accesso HTTPS sicuro, consulta il flag
--login-config-cert
di gcloud CLI.Fornisci manualmente il file a ogni utente, con informazioni su dove salvarlo sul computer locale. Google Cloud CLI prevede di trovare il file in una posizione predefinita specifica del sistema operativo. Se il file ha un nome o una posizione non predefiniti, gli utenti devono utilizzare il flag
--login-config
per specificare la posizione del file di configurazione quando eseguono comandi sul cluster. Le istruzioni per salvare il file sono riportate in Accedere ai cluster con GKE Identity Service.Utilizza gli strumenti interni per eseguire il push del file di configurazione dell'autenticazione sul computer di ogni utente. Google Cloud CLI prevede di trovare il file nelle seguenti posizioni, a seconda del sistema operativo dell'utente:
Linux
$HOME/.config/google/anthos/kubectl-anthos-config.yaml
macOS
$HOME/Library/Preferences/google/anthos/kubectl-anthos-config.yaml
Windows
%APPDATA%\google\anthos\kubectl-anthos-config.yaml