Pasé un tiempo pensando en por qué una política que comienza negándolo todo aún puede volverse sorprendentemente permisiva.

Los ejemplos de Rego de Newton usan:

default allow := false

Eso establece la decisión de respaldo en false cuando no se aplica ninguna otra regla allow.

Suena estricto.

Pero el valor por defecto no juzga la calidad de las reglas que pueden anularlo. El ejemplo de sanciones de Newton permite una transacción cuando el oráculo informa que no hay coincidencias de sanciones. Una regla allow separada también aprueba transacciones desde la dirección de administrador configurada, que Newton describe como una forma de eludir la comprobación de sanciones.

El respaldo es conservador.

Las rutas de aprobación quizá no lo sean.

Cada regla allow independiente agrega otra condición bajo la cual la decisión final puede volverse verdadera. Por lo tanto, una excepción demasiado amplia o una condición incompleta puede debilitar la protección que ofrece la postura de denegar por defecto.

Lo que destacó no fue el respaldo en sí.

Fue lo fácil que default allow := false puede confundirse con una prueba de que toda la política es conservadora. La denegación por defecto proporciona una posición inicial más segura, pero la seguridad real de la política sigue dependiendo de cada regla capaz de producir una aprobación.

¿La denegación por defecto le da a las políticas de Newton una base más sólida, o crea una confianza que puede desaparecer a través de una ruta allow mal escrita?

¿El default allow := false hace que una política de Newton sea realmente más segura?

#Newt #NEWT @NewtonProtocol l $NEWT $BREV $TLM
it creates a strong foundatio
allow path is tightly written
11 hora(s) restante(s)