Keycloak: 4. Créer le service

Cette documentation fait partie du guide Automatiser avec la CLI. Consultez le guide complet ici : Démarrez Keycloak, récupérez ses identifiants et modifiez sa configuration par programmation avec la CLI Stackhero.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose un service Keycloak cloud qui simplifie le déploiement d'un fournisseur d'identité prêt pour la production en seulement 2 minutes :

  • Utilisateurs, realms et clients en nombre illimité
  • Prise en charge de OpenID Connect, OAuth 2.0, SAML 2.0, connexion via réseaux sociaux, fédération LDAP et Active Directory
  • Nom de domaine personnalisé avec HTTPS intégré pour un accès sécurisé (par exemple, https://login.votre-entreprise.com)
  • Thèmes personnalisés : personnalisez facilement vos pages de connexion, la console de compte et les e-mails grâce à un éditeur en ligne inclus
  • Serveur e-mail dédié avec SPF, DKIM et DMARC, pour que les confirmations de compte et réinitialisations de mot de passe soient gérées automatiquement
  • Base de données PostgreSQL intégrée, avec la console d'administration accessible sur un port dédié et désactivable
  • Mises à jour en un clic pour garder votre système à jour sans intervention manuelle

Consacrez votre temps au développement, pas à la configuration : vous pouvez tester la solution Keycloak cloud de Stackhero en moins de 5 minutes.

Voici un exemple de script qui crée un stack, ajoute votre service Keycloak dessus, attend son démarrage, récupère sa configuration (y compris les identifiants générés), puis applique une nouvelle configuration.

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

serviceStore="keycloak"   # Le nom du store de service Keycloak (voir étape 2)
instance="..."                # Une taille d'instance de l'étape 3
region="europe"               # Un nom de région de l'étape 3

# Créez un stack pour votre service (utilise votre organisation par défaut ; ajoutez --organization si besoin)
stackId=$(stackhero --format=script stack-create \
  --name="My Keycloak stack")
echo "Stack créé : ${stackId}"

# Ajoutez Keycloak au stack (les noms sont résolus automatiquement)
serviceId=$(stackhero --format=script service-add \
  --stack="My Keycloak stack" \
  --service-store="${serviceStore}" \
  --instance="${instance}" \
  --region="${region}")
echo "Service ajouté : keycloak"

# Attendez que le service soit totalement opérationnel (cela peut prendre quelques minutes)
stackhero service-wait-for --service="keycloak"

# Récupérez la configuration du service, y compris les identifiants générés
stackhero service-configuration-get --service="keycloak" --format=json