Identités du domaine pour les managers
Un domaine Keystone par client, administré par ses managers
En savoir plusOpenKeel : la solution Cloud souveraine, française à portée européenne du groupe inherent Découvrir inherent
Architecture
La console Skyline d'OpenKeel, c'est skyline-console amont plus cinq patchs et une extension serveur : identités déléguées par domaine client, Single Sign-On par domaine, credentials EC2, coût et empreinte carbone à la construction, un tableau de bord FinOps / GreenOps et les métriques des VM.
Un domaine Keystone par client, administré par ses managers
En savoir plusChaque domaine apporte son propre fournisseur d'identité OpenID Connect
En savoir plusLes utilisateurs venus de l'IdP attendent un rôle ; les managers l'accordent ou les pré-autorisent
En savoir plusClés d'accès et secrètes pour l'API EC2, pour les utilisateurs et les administrateurs
En savoir plusChiffres FinOps et GreenOps dans les formulaires de création et la popup des quotas
En savoir plusUn tableau de bord des coûts et de l'empreinte du projet, et les métriques de ses VM
En savoir plusKeystone délègue la gestion des utilisateurs par domaine : un utilisateur qui a le rôle manager sur un domaine crée ses utilisateurs, groupes et projets et leur donne manager, member ou reader, jamais admin et jamais hors du domaine. OpenKeel donne à chaque client un domaine à lui.
| Quoi | Comment | Statut |
|---|---|---|
| Un domaine par client | La ressource OpenKeelCustomer (Kubernetes, à portée cluster) déclare le domaine, ses managers et ses premiers projets ; le contrôleur keystone-customers les tient à jour dans Keystone et répare les changements manuels toutes les 10 minutes | Fait |
| Managers | Rôle manager sur le domaine, hérité par ses projets pour que Skyline accepte leur connexion ; mot de passe initial dans un Secret, jamais réinitialisé par le contrôleur | Fait |
| Connexion | <utilisateur>@<domaine> dans le champ utilisateur de la console (alice@acme) | Fait |
| Règles Keystone dans Skyline | Les 204 règles keystone:* de Keystone 2026.2, vérifiées avec un persona manager à portée domaine (1 866 règles × 8 personas identiques) | Fait |
| Menu Domaine de la console projet | Domaine > Single Sign-On pour les utilisateurs qui ont manager ou admin sur le domaine | Fait |
| Utilisateurs, groupes et projets du domaine depuis Skyline | Les pages Identité de la console restent réservées aux administrateurs système : un manager utilise ok ou l'API avec un jeton à portée domaine | À faire |
Supprimer un client : deletionPolicy: Retain désactive le domaine et le garde ; Delete le supprime avec ses utilisateurs, groupes et projets. Détails : openkeel-keystone/docs/CUSTOMERS.md.
Domaine > Single Sign-On, onglet Identity Provider : le manager relie le domaine à l'IdP de l'entreprise (Keycloak, Entra ID, Okta…). Les réglages vont dans l'OpenKeelCustomer du domaine ; le contrôleur écrit dans Keystone le fournisseur d'identité, un mapping généré par OpenKeel (jamais écrit par le client) et le protocole openid.
| Réglage | Rôle |
|---|---|
| Activé | Active ou désactive le Single Sign-On du domaine |
| Issuer URL | L'issuer OpenID Connect de l'IdP ; son document de découverte doit être joignable |
| Client ID, Client Secret | Le client de la console chez l'IdP ; le secret est en écriture seule (gardé si laissé vide) et stocké dans un Secret Kubernetes |
| User Name Claim | Le claim qui nomme l'utilisateur dans le domaine (par défaut preferred_username) |
| Groups Claim, Group Mapping | Groupes de l'IdP transformés en appartenances aux groupes du domaine (cloud-admins = admins), groupes créés s'ils manquent |
| Libellé du bouton | Texte du bouton de connexion |
| Redirect URI | Affichée par la page, à enregistrer dans le client de l'IdP |
Les utilisateurs créés par l'IdP sont des utilisateurs fantômes du seul domaine du client. Pas encore fait : un hôte de console par client, si bien que la page de connexion propose encore les IdP de la configuration de Skyline.
Domaine > Single Sign-On, onglet Users : personne n'entre dans les projets du domaine sans une décision d'un manager.
Un utilisateur authentifié par l'IdP est créé dans le domaine sans rôle : affiché Pending
Le manager choisit un rôle : member, manager (sur le domaine, hérité par ses projets) ou none
none retire les rôles et désactive l'utilisateur : Keystone révoque ses jetons
Add User : identifiant chez l'IdP, rôle et e-mail avant la première connexion, qui retrouve alors l'utilisateur et son rôle
Les clés d'accès et secrètes de l'API EC2 d'OpenKeel (AWS CLI, boto3, Terraform), gérées depuis la console sous les politiques ec2_* de Keystone.
Identité > EC2 Credentials : les credentials de tous les utilisateurs, avec les noms d'utilisateur et de projet ; créés pour un utilisateur et un projet choisis, ou supprimés.
Menu utilisateur, à côté des Application Credentials : l'utilisateur crée des credentials pour l'un de ses projets.
Les formulaires de création chiffrent ce qui est construit grâce à openkeel-pricing (POST /v1/quotes), avec les tarifs unitaires de l'OpenKeelTenant du projet : coût par mois (€) et empreinte carbone par an (kg CO₂e).
| Où | Ce qui est affiché |
|---|---|
| Formulaire d'instance | Gabarit, nombre, volumes racine et de données (le disque racine du gabarit est écarté quand l'instance démarre sur un volume) |
| Formulaire de volume | Taille et nombre |
| Zone DNS, connexion IPsec site à site | Le coût et l'empreinte annuels de la zone ou du VPN |
| Popup des quotas des formulaires | Deux cartes sous les jauges : le coût estimé du projet par mois et son empreinte carbone par an, sur son usage plus ce que le formulaire ajoute (vCPU, mémoire, capacité de volumes) |
Rien n'est affiché quand le catalogue n'a pas d'entrée pricing ou qu'aucun OpenKeelTenant ne fixe les tarifs.
kubevirt_vmi_* lues dans Prometheus par skyline-apiserver (GET /extension/server_metrics)skyline-console reste amont : l'image openkeel-skyline récupère un commit épinglé de la console et applique dans l'ordre les patchs de openkeel-skyline/console-patches avant de la construire. La construction échoue quand un patch ne s'applique plus, si bien qu'une nouvelle version de la console n'est jamais livrée sans eux. Chaque chaîne existe dans chaque langue (allemand et chinois traduits).
Le côté serveur est openkeel-skyline, la réécriture en Go de skyline-apiserver : il relaie les nouveaux types de catalogue (pricing, rating, customer) comme les API OpenStack et ajoute GET /extension/server_metrics.