Politiques hétérogènes
Rego, YAML, IAM, Casbin et SQL décrivent chacun une partie de la même intention. Sans modèle commun, personne ne voit l’autorisation réelle.
PolicyGuardian · policy-as-code
PolicyGuardian traduit vos politiques hétérogènes — Rego, YAML, IAM cloud, Casbin, SQL — vers un modèle logique unifié, l’UPM, puis interroge le solveur SMT Z3 sur leur cohérence, leur complétude et leur conformité.
Pré-industrialisation · validé en environnement représentatif · pas de libre-service
01 — Problème
Les règles qui protègent les données ne tiennent pas dans un seul fichier. Elles s’accumulent dans des dépôts OPA, des rôles IAM, des vues SQL et des YAML d’équipe. L’écart entre ces textes échappe à une revue manuelle. Il apparaît en production, ou le jour de l’audit.
Rego, YAML, IAM, Casbin et SQL décrivent chacun une partie de la même intention. Sans modèle commun, personne ne voit l’autorisation réelle.
Deux politiques peuvent se contredire sans qu’un contrôle de syntaxe ne le signale. La contradiction ne se montre qu’à l’exécution.
Une relecture humaine ne passe pas à l’échelle de plusieurs milliers de règles, et elle ne produit pas de contre-exemple.
Un principe de minimisation ou d’accès qui reste un paragraphe de politique interne n’est pas encore un contrôle. Il faut un invariant vérifiable.
02 — Solution
PolicyGuardian ne remplace pas les langages de policy. Il les rassemble dans un modèle sur lequel un solveur peut raisonner, et il renvoie le diagnostic là où les politiques changent : la chaîne DevSecOps.
Le Unified Policy Model représente des politiques issues de Rego, Casbin, IAM cloud et SQL. La spécification est un schéma JSON, avec un traducteur. L’outillage source reste en place.
Le solveur cherche contradictions, trous de couverture et violations d’invariants. Une contradiction vient avec un témoin. Un cas non tranché est signalé, pas converti en succès.
Un plugin GitHub Actions et Jenkins relance la vérification à chaque changement de politique. Les constats sortent au format SARIF. Une API expose vérification, extraction et diagnostic.
03 — Méthode
Collecte des politiques OPA / Rego, YAML, IAM cloud, Casbin et SQL, sans exiger un langage unique en amont.
Chaque source est projetée dans le modèle pivot. La correspondance mesurée sur les langages testés est de 95,6 %, pas une traduction sans reste.
Cohérence, couverture, invariants de sécurité et de conformité — dont sept invariants RGPD déjà traduits et vérifiés sur un corpus réel.
Rapport, graphe de dépendances, heatmap de conflits, indicateurs de couverture. La CI échoue quand les invariants échouent.
04 — Différence
Un linter vérifie la forme. Un moteur comme OPA évalue une requête et reste le bon outil pour appliquer une décision. PolicyGuardian pose une autre question : l’ensemble des politiques est-il cohérent, couvrant, et compatible avec les invariants écrits ?
| Indicateur | Mesure | Cadre |
|---|---|---|
| Correspondance syntaxico-sémantique | 95,6 % | Cinq langages testés. Hypothèse de représentation commune confirmée, sans perte majeure — pas sans reste. |
| Détection des contradictions | 87,2 % | Jeux de tests labellisés (contradictoires, incomplets, conformes). |
| Faux positifs | 5,7 % | Même famille de corpus. Réduction identifiée comme suite de travail, pas comme acquis. |
| Temps de vérification | 36,8 s | Moyenne pour 10 000 politiques, cluster Kubernetes d’essai. Maturité partielle sur le temps de réponse. |
| Invariants RGPD | 7 vérifiés | Traduits et vérifiés sur corpus réel. La couverture réglementaire n’est pas complète. |
| Stabilité du solveur | 82 % | Des cas indéterminés, traités ensuite par partitionnement. Un indéterminé n’est pas affiché comme une preuve. |
05 — Pour qui
RSSI, DPO, DSI, architectes sécurité, data managers et équipes DevSecOps d’entreprises data-intensive — ETI et grands comptes. Les premiers pilotes visés sont la finance et la santé.
Voir une contradiction entre politiques avant qu’elle ne devienne un incident.
Faire d’un invariant de conformité une formule que le solveur peut échouer.
Une gouvernance des données qui suit la chaîne de livraison, pas un tableur d’audit.
Une carte des dépendances et des conflits, à partir des langages déjà en place.
Relier rôles IAM, vues SQL et policies OPA dans une seule lecture.
Le contrôle au commit, avec un rapport SARIF que la revue sait déjà lire.
06 — Société
Bumker.io SARL mène le programme « Policy-as-Code vérifiée formellement ». PolicyGuardian en est la valorisation industrielle : un moteur en Python et Go couplé à Z3, une API de vérification et de diagnostic, une interface pour explorer dépendances et contradictions.
Le système a été validé en environnement représentatif (TRL 5 à 6) et exercé sur des chaînes DevSecOps. Il n’est pas industrialisé pour un déploiement client à grande échelle. L’objectif de cette phase est le passage vers un produit pilote, pas une offre générale.
07 — Contact
Pas de grille tarifaire. Pas de souscription en ligne. L’échange se fait directement avec Bumker.io.
Écrivez pour un corpus de politiques réel, un branchement CI, ou une lecture des limites actuelles du moteur. Les chiffres de cette page restent des mesures de R&D.