HTTP AuthZ Policy Middleware

Expression Playground

GitHub
Ctrl+Enter
Expression Language Reference

Identifiers

methodHTTP method (GET, POST, ...)
pathRequest path
hostRequest host

Operators

==Equal (string)
!=Not equal (string)
startsWithString prefix match
endsWithString suffix match
matchesRegex match
containsList contains string
ANDLogical AND
ORLogical OR
NOTLogical NOT

Functions

header(name)First header value (string)
headerValues(name)All header values ([]string)
headerList(name)Comma-split header ([]string)
contains(list, item)List contains item (bool)
anyOf(list, items...)List has any of items (bool)
allOf(list, items...)List has all items (bool)
matches(str, regex)Regex match (bool)

Examples

method == "GET" AND path startsWith "/api"

contains(headerList("X-Teams"), "platform-eng")

anyOf(headerList("X-Roles"), "admin", "editor")

matches(path, "^/api/v[0-9]+/.*")