Authentification JWT avec un fournisseur d'identité personnalisé est disponible avec le plan Enterprise. Pour effectuer la mise à niveau, consultez la page des plans dans la Cloud Console.
ClickHouse Cloud vous permet d'authentifier les connexions à un service à l'aide de JSON Web Tokens (JWT) validés par rapport à vos propres endpoints JSON Web Key Set (JWKS). Au lieu de gérer des identifiants de base de données, votre fournisseur d'identité émet des jetons de courte durée que ClickHouse vérifie à l'aide des clés publiques publiées à l'URL JWKS que vous configurez.
Vous pouvez configurer vous-même ces fournisseurs JWKS pour chaque service, depuis Paramètres → Sécurité dans la console ClickHouse Cloud.
Avant de commencer
Pour configurer des fournisseurs JWT pour un service, vous devez disposer des éléments suivants :
- Une organisation avec le plan Enterprise.
- Un service exécutant ClickHouse version 26.4 ou une version ultérieure.
- Un rôle disposant de l'autorisation
control-plane:service:managesur le service (par exemple, Admin ou Service admin). Les membres qui ne disposent pas de cette autorisation voient la section en lecture seule. - Une URL JWKS HTTPS accessible publiquement, publiant au moins une clé RSA (
RS256) ou, pour les services exécutant la version 26.8 ou une version ultérieure, une clé EC (ES256,ES384,ES512).
Fonctionnement
Le client (votre fournisseur d’identité ou votre application) génère un JWT et le signe avec sa clé privée. Le jeton doit respecter le format de jeton attendu. ClickHouse le vérifie ensuite à l’aide des clés publiques publiées à l’URL de votre JWKS :
- ClickHouse lit l’en-tête
kid(ID de clé) du jeton et sélectionne la clé correspondante dans votre document JWKS. - Il vérifie la signature du jeton à l’aide de cette clé publique et contrôle les claims
iss(émetteur) etaud(audience) par rapport à la configuration de votre fournisseur. - Si la vérification réussit, la connexion s’exécute sous la forme d’un utilisateur éphémère dont les droits d’accès proviennent des claims
clickhouse:grantsetclickhouse:rolesdu jeton, dans la limite des autorisations de l’utilisateurdefault. Consultez Droits d’accès pour plus de détails.
ClickHouse valide et récupère l’URL JWKS lorsque vous ajoutez ou mettez à jour un fournisseur ; une URL mal configurée ou inaccessible est donc rejetée immédiatement.
Ajouter un fournisseur JWT
Ouvrir les paramètres de sécurité du service
Accédez à votre service, ouvrez Paramètres, puis faites défiler jusqu’à la section Sécurité. Recherchez la carte Authentification JWT.

Ouvrir le volet des fournisseurs
Sélectionnez Configurer des fournisseurs JWT (ou Gérer les fournisseurs JWT si vous en avez déjà configurés). Le volet s’ouvre avec un formulaire vierge de nouveau fournisseur.
Renseigner les informations du fournisseur
Remplissez le formulaire du fournisseur et sélectionnez Enregistrer.
| Champ | Description |
|---|---|
| Nom | Nom unique de ce fournisseur pour le service. Il ne peut pas être modifié après sa création. |
| Émetteur | Claim iss attendue des jetons entrants. |
| Audience | Claim aud attendue des jetons entrants. |
| URL JWKS | URL HTTPS publique qui publie les clés publiques utilisées pour vérifier les signatures des jetons. |
| Claim des rôles (facultatif) | Claim du jeton à partir de laquelle lire les rôles ClickHouse. Laissez ce champ vide pour utiliser le nom de claim par défaut clickhouse:roles. Les rôles indiqués dans le jeton doivent déjà exister sur le service. |
Ajouter d’autres fournisseurs si nécessaire
Utilisez Ajouter un autre fournisseur pour configurer des fournisseurs supplémentaires. Un service peut avoir jusqu’à cinq fournisseurs JWT.
Limites
- Au maximum cinq fournisseurs JWT par service.
- Les fournisseurs JWKS acceptent les clés RSA (
RS256) et, à partir de la version 26.8, les clés EC (ES256,ES384,ES512). - L’URL JWKS doit être un endpoint HTTPS public. Les adresses privées, internes ou link-local sont rejetées.
- Authentification JWT — claims du jeton, utilisateurs éphémères et utilisation du client.