Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !
opa — Moteur de politiques déclaratif qui permet l'autorisation et l'application de politiques à travers les services, Kubernetes, Terraform, Docker et les API en utilisant le langage Rego. | Kitploit
Moteur de politiques déclaratif qui permet l'autorisation et l'application de politiques à travers les services, Kubernetes, Terraform, Docker et les API en utilisant le langage Rego.
Open Policy Agent (OPA) est un moteur de politiques open source et polyvalent qui permet une application de politiques unifiée et contextuelle sur l'ensemble de la pile.
Écrivez votre première politique Rego avec le Rego Playground ou utilisez-le pour partager votre travail avec d'autres afin d'obtenir des retours et de l'aide. Jetez un œil aux exemples de Contrôle d'accès si vous ne savez pas par où commencer.
Consultez le fichier ADOPTERS.md pour une liste des adoptants en production. Votre organisation utilise-t-elle OPA en production ? Soutenez le projet OPA en soumettant une PR pour ajouter votre organisation à la liste avec une brève description de vos cas d'utilisation d'OPA !
Vous souhaitez intégrer OPA ?
Consultez le SDK Go de haut niveau ou l'API Go de bas niveau
pour intégrer OPA à des services écrits en Go.
Consultez la référence de l'API REST
pour intégrer OPA à des services écrits dans d'autres langages.
Lisez le Guide de contribution pour apprendre comment faire votre première contribution.
Utilisez #contributors sur Slack pour discuter avec d'autres contributeurs et mainteneurs d'OPA.
Ouvrez un problème GitHub pour demander des fonctionnalités ou signaler des bogues.
Comment fonctionne OPA ?
OPA vous offre un langage déclaratif de haut niveau pour rédiger et appliquer des politiques
sur l'ensemble de votre pile.
Avec OPA, vous définissez des règles qui régissent le comportement de votre système. Ces
règles existent pour répondre à des questions comme :
L'utilisateur X peut-il appeler l'opération Y sur la ressource Z ?
Vers quels clusters la charge de travail W doit-elle être déployée ?
Quelles étiquettes doivent être définies sur la ressource R avant sa création ?
Vous intégrez des services avec OPA afin que ce type de décisions politiques n'ait pas à être
codé en dur dans votre service. Les services s'intègrent avec OPA en
exécutant des requêtes lorsque des décisions politiques sont nécessaires.
Lorsque vous interrogez OPA pour une décision politique, OPA évalue les règles et les données
(que vous lui fournissez) pour produire une réponse. La décision politique est renvoyée comme
résultat de la requête.
Par exemple, dans un cas d'utilisation simple d'autorisation d'API :
Vous écrivez des règles qui autorisent (ou refusent) l'accès aux API de votre service.
Votre service interroge OPA lorsqu'il reçoit des requêtes API.
OPA renvoie des décisions d'autorisation (ou de refus) à votre service.
Votre service applique les décisions en acceptant ou en rejetant les requêtes en conséquence.
Enforcing Bespoke Policies In Kubernetes @ KubeCon US 2017 : vidéo, diapositives
Istio's Mixer: Policy Enforcement with Custom Adapters @ CloudNativeCon US 2017 : vidéo, diapositives
Sécurité
Un audit de sécurité tiers a été réalisé par Cure53, vous pouvez consulter le rapport complet ici.
Veuillez signaler les vulnérabilités par e-mail à open-policy-agent-security.
Nous enverrons un message de confirmation pour accuser réception du
rapport, puis nous enverrons des messages supplémentaires pour assurer le suivi une fois le problème
examiné.