This is a necessary feature to realize #172: by introducing the and/or/not semantics into the filter chain match, we can integrate the features that currently realize TriggerRule into Matcher. For example, in the previous implementation, the
If /path1 is matched, authentication is performed
If test.com is matched, authentication is performed
However, when we integrated TriggerRule and Matcher in #172, we can no longer write rules that require such and semantics. This is why this is necessary.
Authenticate if path matches /path1 and domain matches test.com.
To achieve this, we need an API like the following
message Default {
Match match = 1;
}
message Not {
Unit unit = 1;
}
message And {
repeatedly Unit unit = 1;
}
message Or {
repeatedly Unit unit = 1;
}
message Unit {
oneof {
Default default = 1;
Not not = 2;
And and = 3;
Or or = 4;
}
}
message Matches {
repeatedly Unit unit = 1;
}
This is a necessary feature to realize #172: by introducing the and/or/not semantics into the filter chain match, we can integrate the features that currently realize TriggerRule into Matcher. For example, in the previous implementation, the
/path1
is matched, authentication is performedtest.com
is matched, authentication is performedHowever, when we integrated TriggerRule and Matcher in #172, we can no longer write rules that require such and semantics. This is why this is necessary.
Authenticate if path matches
/path1
and domain matchestest.com
.If path matches
/path2
and domain matchestest2.com
, do not authenticate.To achieve this, we need an API like the following