Policy list (<policy-list>)

The <policy-list> is a list of security policies.

When using an alias as an applied policy (<alias-policy-name>), you can redefine its configuration.

Syntax

<policy-list> ::= <policy> {"," <policy>} ";"

<policy> ::= <choice> | <call-policy>

<choice> ::= "choice" "(" <attr-policy> ")" "{"

<case-name> ":" <policy-list> ";"

{<case-name> ":" <policy-list> ";"}

[<default-case>]

"}"

<default-case> ::= "_" ":" <policy-list> ";"

<call-policy> ::= <configured-policy>

<attr-policy> ::= <configured-policy>

<configured-policy> ::= <related-policy> [<configuration>] [<policy-args>]

<related-policy> ::= <alias-policy-name>

| <family-instance-name> "." <policy-name>

<policy-args> ::= "(" <arg> {"," <arg>} ")"

<arg> ::= "src" | "dst" | <arg-name>

Elements

<policy-list>

Set of security policies.

<policy>

Security policy. May be presented in the form of a call policy or in the form of a choice multiple selection operator.

<choice>

The choice ... case construction (analogous to the switch operator in C). The choice multiple selection operator calls the attr policy specified in the arguments of the operator. This will result in the invocation of the set of security policies that matches the value returned by the attr policy.

<case-name>

JSON object that designates the selection option. When compiling the file, this value is associated with a certain integer that will be used to make the selection.

<default-case>

The list of default policies that will be applied to an event if no <case-name> value is found for the value returned by the attr policy.

<call-policy>

The configured call policy with received arguments.

<attr-policy>

The configured attr policy with received arguments.

<related-policy>

Link to a policy or alias.

<configuration>

JSON configuration of the security policy. The configuration is processed by the parser specified in the parser statement when the policy family is declared. To make the JSON expression more compact, quotation marks can be omitted wherever this will not lead to ambiguity.

<policy-args>

List of arguments passed to the policy. The order and types of arguments must correspond to the interface specified in the <family-interface> element.

<arg-name>

Name of the argument from the method to which the policies are bound.

In matrix binding rules, the argument name is passed in the format message.name, where name is the argument name.

Page top