Aller au contenu principal

Menu de commandes

Accédez à une page ou recherchez dans le catalogue

Outils et scripts IA

Vérification des realms Keycloak

Vérifiez les exports de realm et la configuration du serveur Keycloak avant d'importer ou de déployer : URI de redirection avec joker, sslRequired none, secrets clients et clés de signature dans les exports, mots de passe admin en clair, start-dev dans les déploiements et paramètres de connexion faibles.

$5.00

Ce que vous recevez : 1 fichier · 50.95 KB · ZIP

Voir les options d'achat

Description du produit

Un client avec "*" dans Valid Redirect URIs permet à Keycloak d'envoyer des codes d'autorisation à n'importe quel site choisi par un attaquant. Un fichier de realm écrit par kc.sh export contient en clair tous les secrets clients et les clés de signature privées du realm : le committer permet donc à n'importe qui de signer ses propres jetons. Un manifeste Kubernetes qui lance start-dev avec KC_BOOTSTRAP_ADMIN_PASSWORD: admin sert le realm master en HTTP non chiffré avec un mot de passe connu. Ce skill détecte ces erreurs et les autres erreurs Keycloak ci-dessous, et vous indique comment corriger chacune d'elles.

Votre agent exécute un scanner sur votre projet : exports et imports de realm (JSON de realm, fichiers d'utilisateurs de kc.sh export, ressources KeycloakRealmImport, YAML de keycloak-config-cli et JSON de realm conservé dans une ConfigMap), fichiers d'adaptateur keycloak.json, keycloak.conf, et paramètres Keycloak où qu'ils soient écrits : variables KC_ et arguments de kc.sh dans les fichiers Compose, manifestes et Secrets Kubernetes, valeurs Helm, ressource de l'opérateur Keycloak, Dockerfiles, unités systemd et fichiers .env. Il connaît les valeurs par défaut de Keycloak et ses clients intégrés, considère les placeholders de vault et d'environnement ainsi que les valeurs masquées des exports comme conservés hors du fichier, et distingue une configuration locale start-dev d'un déploiement. Les fichiers de realm et les paramètres situés dans des chemins de test, de fixtures, de dev ou locaux (src/test/resources, integration-tests, e2e, clusters kind) sont signalés en REVIEW au lieu de BLOCK. Il ne contacte jamais Keycloak et n'utilise jamais le réseau. Il renvoie BLOCK, REVIEW ou NOT FLAGGED, avec le fichier, la ligne, la raison et une approche plus sûre. Les secrets ne sont jamais affichés.

Ce qu'il vérifie

BLOCK (à corriger avant la mise en production)

  • K01 : un realm avec sslRequired réglé sur none
  • K02 : URI de redirection qui acceptent d'autres hôtes : "*", "https://*" ou un joker juste après l'hôte (y compris les URI de redirection après déconnexion) ; les jokers de port loopback pour les applications natives ne sont pas signalés
  • K03 : identifiants dans les fichiers de realm et d'adaptateur : secrets clients, secrets clients des fournisseurs d'identité, mots de passe SMTP et de bind LDAP, mots de passe d'utilisateurs, graines OTP, secrets clients de keycloak.json
  • K04 : matériel de clé du realm dans un fichier : clés privées et secrets des fournisseurs de clés, mots de passe des magasins de clés, clés privées des clients SAML
  • K05 : mots de passe serveur en clair : mot de passe admin de bootstrap (y compris l'ancien KEYCLOAK_ADMIN_PASSWORD), mot de passe de base de données (y compris dans KC_DB_URL), magasin de clés, magasin de confiance et autres options Keycloak de mot de passe ou de secret, sous forme de variables KC_, d'arguments de kc.sh, de lignes de keycloak.conf ou d'options de l'opérateur
  • K06 : start-dev dans un manifeste Kubernetes, des valeurs Helm, une unité systemd, ou un fichier Compose ou Dockerfile nommé pour la production ou le staging (les configurations kind, minikube et k3d reçoivent K20 à la place)

REVIEW (à vérifier avant la publication)

  • K11 : clients avec le flux implicite activé
  • K12 : clients publics avec Direct Access Grants (l'octroi par mot de passe)
  • K13 : détection des attaques par force brute désactivée
  • K14 : aucune politique de mot de passe, aucune longueur minimale, ou une longueur minimale inférieure à 8
  • K15 : "*" dans les Web Origins d'un client
  • K16 : clients publics qui n'exigent pas PKCE avec S256 et aucune politique client activée pour les clients publics qui l'impose
  • K17 : durées de vie des jetons d'accès supérieures à une heure
  • K18 : auto-inscription dans le realm master ou sans vérification de l'e-mail
  • K19 : hostname-strict désactivé sans nom d'hôte défini dans le même fichier
  • K20 : start-dev dans un service Compose qui publie son port au-delà de 127.0.0.1, ou dans un Dockerfile qui n'est pas nommé pour un usage local
  • K21 : URI de redirection avec un joker de chemin sur un hôte non local (Keycloak avant 26.6.2 présente aussi la CVE-2026-7504 pour les URI de redirection avec joker)
  • K22 : mots de passe Keycloak en clair dans des fichiers .env qu'aucun .gitignore ne couvre

Ce qui est inclus

  • Le scanner (Python 3.9+, bibliothèque standard uniquement)
  • Un guide des règles avec la raison, l'approche plus sûre et un lien vers la documentation pour chaque règle (documentation Keycloak et RFC 9700)
  • Un exemple à risque et un exemple sûr (un export de realm de boutique, un fichier Compose, un Deployment Kubernetes, keycloak.conf et un fichier env), ainsi que le rapport réel produit par le scanner sur l'exemple à risque

Limites

Il lit chaque fichier séparément et tel qu'il est écrit. Un nom d'hôte défini dans un autre fichier, les valeurs des fichiers .env utilisés par un fichier Compose, les templates de charts Helm, les clés Helm propres à un chart, Terraform, et les modifications faites ensuite dans l'Admin Console ou l'Admin REST API ne sont pas vus. Les mots de passe en clair dans les fichiers .env ne sont signalés que si aucun .gitignore ne couvre le fichier, et les mots de passe dans les configurations locales start-dev et les workflows CI ne sont pas signalés. Le développement, le test et la production sont déterminés à partir des noms de fichiers, des dossiers, de start-dev et des ports publiés : vérifiez donc K06, K20 et les résultats REVIEW dans les chemins de test au regard de l'usage réel des fichiers. Les realms de démarrage rapide de Keycloak et son manifeste Kubernetes de démarrage rapide sont signalés là où ils sont dangereux hors d'un ordinateur portable, et un export complet avec les valeurs par défaut de Keycloak reçoit K13 et K14, car la documentation Keycloak conseille de modifier les deux. NOT FLAGGED n'est pas une garantie.

Contenu

Un fichier ZIP contenant 20 fichiers : SKILL.md, le scanner dans scripts/ (7 fichiers Python), references/rules.md (chaque règle avec sa raison et l'approche plus sûre), et examples/ (10 fichiers d'exemple plus report.md, la sortie réelle du scanner sur l'exemple à risque).

Mode d'emploi : Il s'agit d'un skill d'agent : un dossier contenant un fichier SKILL.md et des scripts Python qu'un agent de codage IA comme Claude Code, Cursor ou Codex CLI peut exécuter. Décompressez-le dans le dossier des skills de votre agent (pour Claude Code : ~/.claude/skills/), puis demandez à votre agent de vérifier votre projet. Les scripts fonctionnent aussi seuls avec Python 3.9 ou plus récent, sans rien à installer. Ils se contentent de lire vos fichiers : aucun accès réseau, et rien n'est envoyé nulle part.

Ce que vous recevez

1 fichier · 50.95 KB

  • keycloak-realm-check-1.0.0.zipZIP · 50.95 KB
LicenceUsage commercial autorisé
Vérification du paquetRéussie

Getly a ouvert les fichiers envoyés et n'a rien trouvé qui empêche leur ouverture. Ce n'est ni une analyse antivirus ni une note de qualité.

Publié12 nov. 2026
Taille du fichier50.95 KB
Format du fichierZIP
Versionv1.0

Tags

keycloakoauthidentitysecuritydevopsai agent skill
R
RR HH

Questions fréquentes

Ai-je accès au produit immédiatement ?

Oui. C'est un produit numérique : vous pouvez le télécharger juste après le paiement, directement depuis votre bibliothèque.

Puis-je l'utiliser pour des projets commerciaux ?

Oui. L'usage commercial est autorisé : utilisez-le dans votre propre activité et dans ce que vous vendez. Vous ne pouvez pas revendre ni redistribuer le fichier lui-même.

Quelle est votre politique de remboursement ?

Vous pouvez demander un remboursement dans un délai de 30 jours. Si quelque chose ne va pas, demandez-le depuis votre commande et l'équipe Getly l'examine.

Quels formats et quelles tailles de fichier vais-je recevoir ?

Vous téléchargerez 1 fichier - ZIP - 50.95 KB au total.

Ai-je droit aux mises à jour gratuites ?

Oui : quand le vendeur publie une nouvelle version, vous pouvez retélécharger les derniers fichiers depuis votre bibliothèque sans frais. Consultez le journal des modifications pour les dernières mises à jour.

Prix

$5.00