Intégration du portail
Configurez dans la console le principal de service et le jeton d'API d'un portail de libre-service, et les webhooks qu'il reçoit.
Un portail de libre-service pilote Kyvernon comme principal de service : un compte pour un programme, avec le rôle intégré Tenant service principal et un jeton d'API. Cette page configure le compte une fois et abonne le portail aux événements dont il a besoin. Vous avez besoin des privilèges Kyvernon.Identity.ManageUsers, Authorization.ModifyPermissions et Kyvernon.Webhook.Manage sur la racine.
Dans la console
Créer le principal de service
- Ouvrez Menu utilisateur en haut à droite, sélectionnez Administration, puis sélectionnez Utilisateurs dans la liste de gauche.
Sélectionnez Créer un utilisateur. Saisissez Nom d’utilisateur, par exemple
portal, et Nom affiché, par exempleSelf-service portal, ainsi qu'un mot de passe ; le compte ne se connecte pas avec. Cochez Compte de service. (Agrandir)
- Sélectionnez Créer.
Lui donner le rôle
- Dans la liste de gauche, sélectionnez Autorisations, puis sélectionnez l'entrée du haut, Domaine de gestion, dans l'arborescence des objets.
Sélectionnez Attribuer un rôle. Choisissez Type d’entité Utilisateur, recherchez
portalcomme Nom de l’utilisateur ou du groupe, et choisissez le rôle Tenant service principal comme Rôle. Gardez Propager aux objets enfants cochée. (Agrandir)
- Sélectionnez Enregistrer.
Créer son jeton d'API
- Dans la liste de gauche, sélectionnez Jetons d’API, puis choisissez
portalsous Jetons de. Sélectionnez Créer un jeton, saisissez Nom, par exemple
portal-prod, choisissez Durée de vie et sélectionnez Créer le jeton. (Agrandir)
- Sélectionnez Copier dans le presse-papiers, conservez le secret dans le gestionnaire de secrets du portail et sélectionnez J’ai enregistré le secret. Le secret n'est affiché qu'une fois ; voir Jetons d'API.
Abonner le portail aux événements
- Ouvrez la page d'accueil (Accueil), sélectionnez Webhooks sous Raccourcis, puis sélectionnez Nouveau webhook.
- Saisissez Nom, Adresse du portail et Secret partagé d'au moins 16 caractères.
Laissez Locataire vide pour recevoir les événements de tous les locataires, ou saisissez l'identifiant d'un locataire pour recevoir uniquement ses événements.
(Agrandir)
- Sélectionnez Créer le webhook, puis Envoyer un test pour vérifier que le portail répond. Les détails de l'abonnement se trouvent dans Webhooks.
Résultat
Le portail appelle l'API avec son jeton et reçoit ces événements, avec le type CloudEvents kyvernon.event.<type> : server.created, server.deleted, server.resized, server.power, server.reinstalled, tenant.suspended, tenant.resumed, tenant.closed et quota.exceeded. Le champ data.attributes contient tenant, tenantName, externalRef, server, plan et, le cas échéant, action. Un abonnement avec un filtre de locataire reçoit uniquement les événements de ce locataire.
Automatisation
Avec la CLI
kyvernon users create portal --display-name "Self-service portal"
kyvernon users service-account portal
kyvernon roles list
kyvernon permissions set group-d1 portal --role <role-id>
kyvernon users api-tokens portal create portal-prod<role-id> est l'identifiant du rôle Tenant service principal dans la sortie de roles list, et group-d1 est le dossier racine. Le portail appelle ensuite les fonctions de locataire, d'offre, de catalogue et de serveur ; voir Locataires et Serveurs.
Avec l'API
Les mêmes étapes sont POST /v1/identity/users, PUT /v1/identity/users/{username}/service-account, PUT /v1/identity/permissions et POST /v1/identity/users/{username}/api-tokens, et POST /v1/webhooks pour l'abonnement.
Voir aussi
Version 0.1. Dernière modification : 2026-11-14