// Simple predicates
'tacocat'.startsWith('taco')
// Parameterized predicates over structured data
account.balance >= transaction.withdrawal
// JSON objects
{'sub': '12345678',
'aud': 'example2.cel.dev',
'iss': 'https://example1.cel.dev/jwt-issuer'}
// Strongly typed objects
common.GeoPoint{ latitude: 10.0, longitude: -5.5 }
Langage d'expression rapide et sécurisé
Le langage CEL (Common Expression Language) est un langage d'expression rapide, portable et sûr à exécuter dans les applications critiques. Le CEL est conçu pour être intégré dans une application, avec des extensions spécifiques à l'application. Il est idéal pour étendre les configurations déclaratives que vos applications peuvent déjà utiliser.
Utilisez le langage CEL pour effectuer des opérations telles que les filtres de liste pour les appels d'API, les contraintes de validation des tampons de protocole et les règles d'autorisation pour les requêtes API.
Rapide
Portable
Solution extensible
Sécurisé
Le CEL est-il adapté à votre projet ?
Le langage CEL est idéal pour les applications critiques, car il a été conçu pour évaluer rapidement et de manière sécurisée (de l'ordre de la nanoseconde à la microseconde) avec des coûts prévisibles. Les expressions CEL sont particulièrement utiles pour la logique de prédicat et les transformations de données simples.
Le langage CEL est particulièrement efficace dans les applications où les expressions sont évaluées fréquemment, mais rarement modifiées. Par exemple, évaluer une requête HTTP par rapport à une stratégie de sécurité est un excellent cas d'utilisation de CEL. Une expression de stratégie de sécurité CEL aurait un coût de configuration unique pour la validation de l'expression, puis serait évaluée très fréquemment pour un coût négligeable.
Vous ne savez toujours pas ? Consultez la présentation du langage CEL et la définition du langage, ou posez-nous simplement votre question ! Nous serons ravis de vous aider.