Descripción general de Rego - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Descripción general de Rego

Rego es un lenguaje de políticas de uso general, lo que significa que funciona para cualquier capa y dominio. El objetivo principal de Rego es aceptar entradas y datos de JSON/YAML que se evalúan para tomar decisiones basadas en políticas sobre los recursos, las identidades y las operaciones de la infraestructura. Rego le permite redactar políticas sobre cualquier capa de una pila o dominio sin necesidad de cambiar o ampliar el idioma. Estos son algunos ejemplos de decisiones que puede tomar Rego:

  • ¿Se permite o deniega esta solicitud de API?

  • ¿Cuál es el nombre de host del servidor de respaldo de esta aplicación?

  • ¿Cuál es la puntuación de riesgo de este cambio de infraestructura propuesto?

  • ¿En qué clústeres se debe implementar este contenedor para obtener una alta disponibilidad?

  • ¿Qué información de enrutamiento debe usarse para este microservicio?

Para responder a estas preguntas, Rego emplea una filosofía básica sobre cómo se pueden tomar estas decisiones. Los dos principios clave a la hora de redactar la política en Rego son:

  • Cada recurso, identidad u operación se puede representar como datos JSON o YAML.

  • La política es la lógica que se aplica a los datos.

Rego ayuda a los sistemas de software a tomar decisiones de autorización al definir la lógica sobre cómo se evalúan las entradas de los datos JSON/YAML. Los lenguajes de programación como C, Java, Go y Python son la solución habitual a este problema, pero Rego se diseñó para centrarse en los datos y las entradas que representan su sistema y en la lógica para tomar decisiones políticas con esta información.