¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!
opa — Motor de políticas declarativo que permite la autorización y la aplicación de políticas en servicios, Kubernetes, Terraform, Docker y APIs mediante el lenguaje Rego. | Kitploit
Motor de políticas declarativo que permite la autorización y la aplicación de políticas en servicios, Kubernetes, Terraform, Docker y APIs mediante el lenguaje Rego.
Open Policy Agent (OPA) es un motor de políticas de propósito general, de código abierto, que permite la aplicación unificada de políticas conscientes del contexto en toda la pila tecnológica.
Escribe tu primera política de Rego con el Rego Playground o úsalo para compartir tu trabajo con otros y recibir comentarios y ayuda. Echa un vistazo a los ejemplos de control de acceso si no sabes por dónde empezar.
Revisa el archivo ADOPTERS.md para ver una lista de adoptantes en producción. ¿Tu organización usa OPA en producción? ¡Apoya el proyecto OPA enviando un PR para añadir tu organización a la lista con una breve descripción de tus casos de uso de OPA!
¿Quieres integrar OPA?
Consulta el Go SDK de alto nivel o la API de Go de bajo nivel
para integrar OPA con servicios escritos en Go.
Consulta la referencia de la API REST
para integrar OPA con servicios escritos en otros lenguajes.
Usa #contributors en Slack para hablar con otros contribuyentes y mantenedores de OPA.
Crea un issue de GitHub para solicitar funciones o reportar errores.
¿Cómo funciona OPA?
OPA te proporciona un lenguaje declarativo de alto nivel para redactar y aplicar políticas
en toda tu pila.
Con OPA, defines reglas que gobiernan cómo debe comportarse tu sistema. Estas
reglas existen para responder preguntas como:
¿Puede el usuario X llamar a la operación Y sobre el recurso Z?
¿A qué clústeres debe desplegarse la carga de trabajo W?
¿Qué etiquetas deben establecerse en el recurso R antes de que se cree?
Integras servicios con OPA para que este tipo de decisiones de política no tengan
que estar codificadas en tu servicio. Los servicios se integran con OPA
ejecutando consultas cuando se necesitan decisiones de política.
Cuando consultas a OPA por una decisión de política, OPA evalúa las reglas y los datos
(que le proporcionas) para producir una respuesta. La decisión de política se envía de vuelta como
el resultado de la consulta.
Por ejemplo, en un caso de uso simple de autorización de API:
Escribes reglas que permiten (o deniegan) el acceso a las APIs de tu servicio.
Tu servicio consulta a OPA cuando recibe solicitudes de API.
OPA devuelve decisiones de permitir (o denegar) a tu servicio.
Tu servicio aplica las decisiones aceptando o rechazando las solicitudes en consecuencia.
Enforcing Bespoke Policies In Kubernetes @ KubeCon US 2017: vídeo, diapositivas
Istio's Mixer: Policy Enforcement with Custom Adapters @ CloudNativeCon US 2017: vídeo, diapositivas
Seguridad
Un tercero realizó una auditoría de seguridad (Cure53); puedes ver el informe completo aquí.
Por favor, reporta las vulnerabilidades por correo electrónico a open-policy-agent-security.
Enviaremos un mensaje de confirmación para acusar recibo del informe y, a continuación, enviaremos mensajes adicionales para hacer un seguimiento una vez que el problema haya sido investigado.