Accedi utilizzando un nome di dominio completo (FQDN)
GKE Identity Service ti consente di accedere ai cluster configurati dalla riga di comando utilizzando un nome utente e una password di un provider di identità di terze parti. Segui le istruzioni in questa pagina se l'amministratore del cluster ha scelto di consentirti di eseguire l'autenticazione direttamente sul server GKE Identity Service con un nome di dominio completo (FQDN). Per i provider SAML, l'accesso all'accesso è supportato solo tramite questa autenticazione l'importanza di un approccio umile.
Questo approccio all'autenticazione è supportato solo per i cluster on-prem (Google Distributed Cloud) su VMware e bare metal, dalla versione 1.29. Non sono supportati altri tipi di cluster.
La versione dell'interfaccia a riga di comando gcloud
richiesta per accedere con il nome di dominio completo fornito è
almeno la versione 477.0.0.
Flusso di lavoro dell'accesso
Ecco i passaggi del flusso di lavoro in cui un utente accede utilizzando l'approccio all'accesso FQDN:
- Avvio accesso: l'utente esegue il comando
gcloud anthos auth login --server APISERVER-URL
per avvia la procedura di accesso. - Selezione del provider di identità: all'utente viene fornito un elenco di e i provider di identità. L'utente seleziona il provider in cui sono archiviate le sue credenziali.
Autenticazione con provider di identità: il processo di autenticazione varia in base al protocollo del provider di identità scelto.
- OIDC: l'utente viene reindirizzato alla pagina di accesso del provider OIDC. Dopo un dopo aver eseguito l'accesso, il provider restituisce un codice al servizio di identità GKE che lo scambia con un token di accesso tramite una comunicazione back-channel.
- SAML: l'utente viene reindirizzato alla pagina di accesso del provider SAML. Dopo un l'accesso è riuscito, il provider invia direttamente un token (asserzione) al servizio di identità GKE evitando così ulteriori chiamate.
- LDAP: invece di reindirizzare a un provider esterno, il servizio di identità GKE visualizza una pagina di accesso in cui l'utente inserisce le proprie credenziali LDAP, che viene verificata direttamente con il server LDAP.
Verifica dei token e generazione di file kubeconfig: il servizio di identità GKE verifica il token ricevuto (o l'asserzione), crea un nuovo token per l'utente e restituisce un file kubeconfig contenente questo token.
Accesso al cluster: l'utente può accedere al cluster utilizzando i comandi
kubectl
. Il clientkubectl
invia automaticamente il token dal file kubeconfig con per ogni richiesta.Convalida dei token e autorizzazione RBAC: il server API Kubernetes riceve il token, il servizio di identità GKE lo verifica e recupera le attestazioni dell'utente (nome utente e gruppi). Dopo la convalida, il server API esegue il controllo degli accessi basato su ruoli (RBAC, Role-Based Access Control) per determinare le risorse a cui l'utente è autorizzato ad accedere.
Accedi utilizzando certificati SNI attendibili
I certificati SNI semplificano l'accesso al cluster sfruttando certificati attendibili
sono già presenti sui dispositivi aziendali. Gli amministratori possono specificare questo certificato
al momento della creazione del cluster. Se il cluster utilizza un certificato SNI attendibile a livello di cluster
, utilizza il comando in questa sezione con il nome di dominio completo fornito
amministratore di accedere al cluster e ricevere un token di accesso. Puoi anche
utilizza un file kubeconfig
sicuro in cui viene archiviato il token dopo l'autenticazione riuscita.
Esegui questo comando per eseguire l'autenticazione sul server:
gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE
Sostituisci quanto segue:
- APISERVER-URL: nome di dominio completo del server API Kubernetes del cluster.
- OUTPUT_FILE: utilizza questo flag se il tuo file
kubeconfig
si trova in un una località diversa da quella predefinita. Se questo flag viene omesso, l'autenticazione di token vengono aggiunti al filekubeconfig
nella posizione predefinita. Ad esempio:--kubeconfig /path/to/custom.kubeconfig
.
Accedi utilizzando i certificati emessi da CA del cluster
Se non utilizzi un certificato SNI attendibile a livello di cluster, il certificato utilizzato dal servizio di identità viene emesso dall'amministratore del cluster dell'autorità di certificazione (CA). Gli amministratori distribuiscono questo certificato CA agli utenti. Esegui questo comando utilizzando il certificato CA del cluster per accedere al cluster:
gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --login-config-cert CLUSTER_CA_CERTIFICATE
Autenticazione cross-device
L'autenticazione cross-device consente di accedere ai cluster Google Distributed Cloud (GDC) da dispositivi su cui non è installato un browser. Puoi avviare il processo di autenticazione sul tuo dispositivo principale (su cui non è installato un browser) e completarlo su un dispositivo secondario installato con un browser.
Per configurare l'autenticazione cross-device, segui questi passaggi.
Accedere al dispositivo principale
Esegui questo comando per autenticarti sul server sul tuo dispositivo principale. Specifica l'argomento
--no-browser
per indicare che il dispositivo di cui hai bisogno da cui non è installato un browser.gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --no-browser
GKE Identity Service restituisce un comando che devi utilizzare quando registri dal secondo dispositivo. Ecco un esempio di come si presenta il comando:
You are authorizing gcloud CLI without access to a web browser. Please run the following command on a machine with a web browser and copy its output back here. gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --remote-bootstrap="URL_TO_COPY_ON_THE_SECOND_DEVICE" Enter the output of the above command:
Copia il comando
gcloud
.Accedere ai cluster sul secondo dispositivo
Prima di accedere dal secondo dispositivo, verifica di avere installato il browser. e disporre di connettività di rete al server API Kubernetes. Esegui il comando da cui hai copiato il passaggio precedente sul secondo dispositivo.
gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --remote-bootstrap="URL_TO_COPY_ON_THE_SECOND_DEVICE"
Quando tenti di accedere da questo dispositivo, viene visualizzato un messaggio di avviso. Segui la procedura di autenticazione standard visualizzata sul browser. Dopo un'autenticazione riuscita, riceverai un codice monouso. Copia questo codice.
WARNING: The following line enables access to your Cluster resources. ONLY COPY IT TO A MACHINE YOU TRUST AND RUN 'gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --no-browser' EARLY ON. Or_mHYQFm90efgJdwhajx0KeC_WXkuvBPuWv_83nFX9J_Eawm3tQcBpxBBWszj6Ix8dAWCgc1QjJBrlt67bzIYIBTexU7dc_ggtkMTNkG7wCIGYZ75zfg9P1gBshP33STe0ks-AoVonzk01YekMbyNugeYSO18CBwFhaDDSMABq4PI-clgbaSh8CPqrvDKRLenbvfD9BSK6SW945I0bOgPURxNzUX4sICWcvFozhQdLYICuwRM0AgarNFwoeh-0wbJGyRqUjq2NJbaYdf-VCaByiZaGPR2B1QVGXO7deKGtUnk1_tTFOnB6sJQvT6UJ8Ge5nkR38rqBeeGkYdlVIBTXShENG80An1Ve524xZupSzCHNSVTJqYg
Completa l'accesso sul dispositivo principale
Incolla nel prompt del prompt principale il codice copiato dal passaggio precedente dispositivo.
Enter the code you received on the other device: Or_mHYQFm90efgJdwhajx0KeC_WXkuvBPuWv_83nFX9J_Eawm3tQcBpxBBWszj6Ix8dAWCgc1QjJBrlt67bzIYIBTexU7dc_ggtkMTNkG7wCIGYZ75zfg9P1gBshP33STe0ks-AoVonzk01YekMbyNugeYSO18CBwFhaDDSMABq4PI-clgbaSh8CPqrvDKRLenbvfD9BSK6SW945I0bOgPURxNzUX4sICWcvFozhQdLYICuwRM0AgarNFwoeh-0wbJGyRqUjq2NJbaYdf-VCaByiZaGPR2B1QVGXO7deKGtUnk1_tTFOnB6sJQvT6UJ8Ge5nkR38rqBeeGkYdlVIBTXShENG80An1Ve524xZupSzCHNSVTJqYg
Il dispositivo usa questo codice per generare una credenziale che viene salvata in
kubeconfig
. Questo file consente l'accesso al cluster sull'istanza principale dispositivo. Dopo aver eseguito l'accesso, viene visualizzato il seguente messaggio:You are logged in! Context is stored under the name '{cluster-name}'