7.8. Configuration d'un fournisseur d'identité Google
Configurez le fournisseur d'identité google
à l'aide de l'intégration Google OpenID Connect.
7.8.1. À propos des fournisseurs d'identité dans OpenShift Container Platform Copier lienLien copié sur presse-papiers!
Par défaut, seul un utilisateur kubeadmin
existe sur votre cluster. Pour spécifier un fournisseur d'identité, vous devez créer une ressource personnalisée (CR) qui décrit ce fournisseur d'identité et l'ajouter au cluster.
Les noms d'utilisateur OpenShift Container Platform contenant /
, :
, et %
ne sont pas pris en charge.
7.8.2. À propos de l'authentification Google Copier lienLien copié sur presse-papiers!
L'utilisation de Google comme fournisseur d'identité permet à tout utilisateur de Google de s'authentifier sur votre serveur. Vous pouvez limiter l'authentification aux membres d'un domaine hébergé spécifique à l'aide de l'attribut de configuration hostedDomain
.
Pour utiliser Google comme fournisseur d'identité, les utilisateurs doivent obtenir un jeton à l'aide de <namespace_route>/oauth/token/request
afin de pouvoir l'utiliser avec des outils en ligne de commande.
7.8.3. Création du secret Copier lienLien copié sur presse-papiers!
Les fournisseurs d'identité utilisent des objets OpenShift Container Platform Secret
dans l'espace de noms openshift-config
pour contenir le secret du client, les certificats du client et les clés.
Procédure
Créez un objet
Secret
contenant une chaîne de caractères à l'aide de la commande suivante :oc create secret generic <secret_name> --from-literal=clientSecret=<secret> -n openshift-config
$ oc create secret generic <secret_name> --from-literal=clientSecret=<secret> -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow AstuceVous pouvez également appliquer le code YAML suivant pour créer le secret :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vous pouvez définir un objet
Secret
contenant le contenu d'un fichier, tel qu'un fichier de certificat, à l'aide de la commande suivante :oc create secret generic <secret_name> --from-file=<path_to_file> -n openshift-config
oc create secret generic <secret_name> --from-file=<path_to_file> -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.8.4. Exemple de Google CR Copier lienLien copié sur presse-papiers!
La ressource personnalisée (CR) suivante présente les paramètres et les valeurs acceptables pour un fournisseur d'identité Google.
Google CR
- 1
- Ce nom de fournisseur est préfixé à l'identifiant numérique de l'utilisateur Google pour former un nom d'identité. Il est également utilisé pour construire l'URL de redirection.
- 2
- Contrôle la manière dont les correspondances sont établies entre les identités de ce fournisseur et les objets
User
. - 3
- L'identifiant client d'un projet Google enregistré. Le projet doit être configuré avec un URI de redirection de
https://oauth-openshift.apps.<cluster-name>.<cluster-domain>/oauth2callback/<idp-provider-name>
. - 4
- Référence à un objet OpenShift Container Platform
Secret
contenant le secret client émis par Google. - 5
- Un domaine hébergé utilisé pour restreindre les comptes de connexion. Facultatif si l'adresse
lookup
mappingMethod
est utilisée. S'il est vide, tout compte Google est autorisé à s'authentifier.
7.8.5. Ajouter un fournisseur d'identité à votre cluster Copier lienLien copié sur presse-papiers!
Après avoir installé votre cluster, ajoutez-y un fournisseur d'identité pour que vos utilisateurs puissent s'authentifier.
Conditions préalables
- Créer un cluster OpenShift Container Platform.
- Créez la ressource personnalisée (CR) pour vos fournisseurs d'identité.
- Vous devez être connecté en tant qu'administrateur.
Procédure
Appliquer le CR défini :
oc apply -f </path/to/CR>
$ oc apply -f </path/to/CR>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteSi un CR n'existe pas,
oc apply
crée un nouveau CR et peut déclencher l'avertissement suivant :Warning: oc apply should be used on resources created by either oc create --save-config or oc apply
. Dans ce cas, vous pouvez ignorer cet avertissement.Obtenir un jeton du serveur OAuth.
Tant que l'utilisateur
kubeadmin
a été supprimé, la commandeoc login
fournit des instructions sur la manière d'accéder à une page web où vous pouvez récupérer le jeton.Vous pouvez également accéder à cette page à partir de la console web en naviguant vers (?) Help
Command Line Tools Copy Login Command. Se connecter au cluster en transmettant le jeton d'authentification.
oc login --token=<token>
$ oc login --token=<token>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteCe fournisseur d'identité ne permet pas de se connecter avec un nom d'utilisateur et un mot de passe.
Confirmez que l'utilisateur s'est connecté avec succès et affichez le nom de l'utilisateur.
oc whoami
$ oc whoami
Copy to Clipboard Copied! Toggle word wrap Toggle overflow