Autenticazione

I cluster Anthos su VMware (GKE On-Prem) supportano OpenID Connect (OIDC) per l'autenticazione nei cluster utente tramite la riga di comando. Vedi i seguenti argomenti:

Per accedere tramite la console Google Cloud, i cluster Anthos su VMware supportano l'utilizzo di un token di connessione di un account di servizio Kubernetes. Consulta Accesso a un cluster da Google Cloud Console.

Questo argomento presuppone che tu abbia dimestichezza con OAuth 2.0 e OpenID Connect. Dovresti anche conoscere gli ambiti e le rivendicazioni nel contesto dell'autenticazione OpenID.

Panoramica

Con OIDC puoi gestire l'accesso a un cluster Kubernetes utilizzando le procedure standard della tua organizzazione per creare, abilitare e disabilitare gli account dei dipendenti. Puoi anche utilizzare i gruppi di sicurezza della tua organizzazione per configurare l'accesso a un cluster Kubernetes o a servizi specifici nel cluster.

  • Un utente accede a un provider OpenID presentando un nome utente e una password.

  • Il provider OpenID emette un token ID per l'utente. Il token è firmato dal provider.

  • Un'applicazione, che agisce per conto dell'utente, invia una richiesta HTTPS al server API Kubernetes. L'applicazione include il token ID dell'utente nell'intestazione della richiesta.

  • Il server API di Kubernetes verifica il token utilizzando il certificato del provider.

Se la tua azienda esegue un server Active Directory Federation Services (ADFS), il server ADFS potrebbe fungere da provider OpenID. Un'altra opzione è utilizzare una terza parte come provider OpenID. Ad esempio, Google, Microsoft, Facebook e Twitter sono tutti provider OpenID.

Utilizzare l'interfaccia a riga di comando gcloud per chiamare il server API Kubernetes

Il comando gcloud anthos auth login esegue l'autenticazione con i cluster e, di conseguenza, la tua richiesta viene inviata al server API Kubernetes.

Perché questo metodo funzioni, i token ID OIDC devono essere memorizzati nel file kubeconfig. I cluster Anthos su VMware utilizzano l'interfaccia a riga di comando gcloud di Google Cloud CLI per richiedere e ottenere il token ID e altri valori OIDC nel file kubeconfig.

Il server API e il token ID di Kubernetes

Dopo l'autenticazione con il cluster, puoi interagire utilizzando l'interfaccia a riga di comando kubectl di gcloud. Quando kubectl chiama il server API Kubernetes per conto dell'utente, il server API verifica il token utilizzando il certificato pubblico del provider OpenID. Quindi il server API analizza il token per apprendere l'identità dell'utente e i gruppi di sicurezza degli utenti.

Il server API determina se l'utente è autorizzato a effettuare questa particolare chiamata confrontando i gruppi di sicurezza dell'utente con il criterio di Controllo accesso basato sui ruoli (RBAC) del cluster.