I designed my own Domain-Specific Language (DSL) for specifying security rules. Example:
[ { :rule-name "NAME_1" :match-role "NAME_1" :match-path ["*"] :action :allow }
 { :rule-name "public" :match-path ["/public/*" "/api/*"] :action :allow }
 { :rule-name "default" :action :deny } ]

This uses clojure's edn notation. A security rule is a list of clojure map, where each map represent a single rule, and rules are checked sequentially. In the example above, it allows NAME_1 user access to everything, allow the public access to path "/public/*" and "/api/*", and otherwise deny access.

Show me a security rule that allow user with role "operator" access to path "/api/op/*" and "/metrics", while only superadmin can access "/superadmin".
 Do not say the word "edn" in the response
user