Ce document est destiné aux administrateurs de cluster qui ont déjà configuré leurs clusters pour GKE Identity Service. Il fournit des instructions sur la façon de configurer et de gérer l'accès des développeurs et autres utilisateurs de votre organisation à ces clusters configurés.
Il existe deux types de méthodes d'authentification que vous pouvez utiliser pour configurer l'accès des utilisateurs à vos clusters :
- Configurer avec un accès FQDN (recommandé) : cette approche permet aux utilisateurs de s'authentifier directement auprès du serveur GKE Identity Service à l'aide du nom de domaine complet (FQDN) du serveur d'API Kubernetes du cluster. Pour en savoir plus, consultez Configurer l'accès au nom de domaine complet.
- Configurer l'accès basé sur les fichiers : avec cette approche, vous générez un fichier de configuration de connexion et le distribuez aux utilisateurs du cluster. Les utilisateurs peuvent ensuite se connecter aux clusters configurés avec les commandes d'authentification
gcloud
à l'aide de ce fichier. Pour en savoir plus, consultez Configurer l'accès basé sur les fichiers.
Configurer l'accès FQDN (recommandé)
Cette section explique comment configurer l'accès à la connexion utilisateur en fournissant à l'utilisateur l'URL (nom de domaine complet) d'un serveur à utiliser pour l'authentification. Le flux d'authentification permet à l'utilisateur de se connecter avec son IdP et lui fournit un jeton qui est ajouté à son fichier kubeconfig pour accéder au cluster. Cette approche d'authentification n'est compatible qu'avec les clusters sur site (Google Distributed Cloud) sur VMware et bare metal, à partir de la version 1.29. Les autres types de clusters ne sont pas acceptés. Si vous devez configurer l'authentification pour des clusters sur site à l'aide d'une ancienne version logicielle compatible ou pour d'autres types de clusters, suivez les instructions pour configurer l'accès basé sur des fichiers.
Avant de partager le nom de domaine complet avec les utilisateurs, assurez-vous que vous ou votre administrateur de plate-forme avez suivi la configuration appropriée, y compris la configuration DNS pour le nom de domaine complet et la fourniture du nom de domaine complet lors de l'enregistrement auprès de votre fournisseur d'identité, si nécessaire.
Partager un nom de domaine complet (FQDN) avec les utilisateurs
Au lieu d'un fichier de configuration, les administrateurs de cluster peuvent partager le nom de domaine complet (FQDN) du serveur d'API Kubernetes du cluster, tel que https://apiserver.example.com
, avec les utilisateurs. Les utilisateurs peuvent utiliser ce nom de domaine complet pour se connecter au cluster.
Configurer les options d'Identity Service
Cette option de configuration vous permet de définir la durée de vie du jeton. Le identityServiceOptions
de la CR ClientConfig comporte un paramètre sessionDuration
qui vous permet de configurer la durée de vie du jeton (en minutes).
La limite inférieure du paramètre sessionDuration
est de 15 minutes et la limite supérieure est de 1 440 minutes (24 heures).
Voici un exemple de ce à quoi cela ressemble dans le CR ClientConfig :
spec:
identityServiceOptions:
sessionDuration: INT
où INT correspond à la durée de la session en minutes.
Configurer un accès basé sur des fichiers
Au lieu d'accéder au cluster via le nom de domaine complet, les administrateurs de cluster peuvent générer un fichier de configuration de connexion et le distribuer aux utilisateurs du cluster. Vous pouvez utiliser cette option si vous configurez l'authentification sur un cluster dont la version ou le type ne sont pas compatibles avec l'accès au nom de domaine complet. Ce fichier permet aux utilisateurs d'accéder aux clusters à partir de la ligne de commande avec le fournisseur choisi. Cette approche d'authentification n'est compatible qu'avec les fournisseurs OIDC et LDAP.
Générer la configuration de connexion
Console
(Configuration au niveau du parc uniquement)
Copiez la commande gcloud
affichée et exécutez-la pour générer le fichier.
gcloud
Si vous avez configuré le cluster à l'aide de la CLI gcloud
ou si vous devez générer à nouveau le fichier, exécutez la commande suivante pour générer le fichier :
gcloud anthos create-login-config --kubeconfig=KUBECONFIG
où KUBECONFIG
représente le chemin du fichier kubeconfig pour le cluster. S'il existe plusieurs contextes dans le fichier kubeconfig, le contexte actuel est utilisé. Vous devrez peut-être réinitialiser le contexte actuel sur le cluster approprié avant d'exécuter la commande.
Vous trouverez toutes les informations de référence sur cette commande, y compris des paramètres facultatifs supplémentaires, dans le guide de référence de Google Cloud CLI.
Le nom par défaut du fichier de configuration de connexion est kubectl-anthos-config.yaml
, qui correspond au nom attendu par Google Cloud CLI lors de la connexion au fichier. Si vous souhaitez attribuer un nom différent de celui par défaut, consultez la section correspondante de la section Distribuer la configuration de connexion.
Pour en savoir plus sur l'accès des utilisateurs, consultez la section Résoudre les problèmes d'accès des utilisateurs.
Distribuer la configuration de connexion
Voici quelques méthodes pour distribuer le fichier de configuration :
Hébergez le fichier en l'associant à une URL accessible. Les utilisateurs peuvent spécifier cet emplacement avec l'option
--login-config
lors de l'exécution degcloud anthos auth login
, ce qui permet à la CLI Google Cloud d'obtenir le fichier.Envisagez d'héberger le fichier sur un hôte sécurisé. Pour en savoir plus sur l'utilisation de certificats PEM pour l'accès HTTPS sécurisé, consultez l'option
--login-config-cert
de gcloud CLI.Fournissez manuellement le fichier à chaque utilisateur, avec des informations sur son emplacement de sauvegarde sur leur ordinateur local : Google Cloud CLI s'attend à trouver le fichier dans un emplacement par défaut spécifique au système d'exploitation. Si le fichier a un nom ou un emplacement autre que celui par défaut, vos utilisateurs doivent utiliser l'indicateur
--login-config
pour spécifier l'emplacement du fichier de configuration lors de l'exécution de commandes sur le cluster. Les instructions permettant aux utilisateurs d'enregistrer le fichier sont disponibles dans la section Accéder aux clusters à l'aide de GKE Identity Service.Utilisez vos outils internes pour transférer le fichier de configuration d'authentification sur l'ordinateur de chaque utilisateur. Google Cloud CLI s'attend à trouver le fichier aux emplacements suivants, en fonction du système d'exploitation utilisateur:
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