Time AccessControl
dentified by type="Time"
, supports time-based access control policies.
Simple booleans are supported natively but complex logic will usually require combining this with the Chaining plugin.
Attributes
Names | Type | Default | Description |
---|---|---|---|
operator | "AND", "OR" | "AND" | This controls the evaluation of the child plugins in the expected fashion. If set to "AND", the first plugin to return a non-true result ends the evaluation. If set to "OR", the first plugin to return a true result ends the evaluation. |
Child Elements
Name | Cardinality | Description |
---|---|---|
<TimeSinceAuthn>Â | 0 or more | An ISO 8601 duration, e.g., "PT1H" = 1 hour |
For the remainder of the rules supported, one of a set of relational operators must be supplied, followed by a value to test, separated by whitespace. The operators supported are | ||
<Time>Â | 0 or more | Operator followed by ISO 8601Â duration |
<Year>, <Month>, <Day> <Hour><Minute>, <Second> <DayOfWeek> |
| Performs a comparison between a particular portion of the current time and the value specified in the rule using the supplied operator. Months are numbered from 1-12, hours from 0-23, and days of the week from 0-6 (Sunday being 0). |
Example
Example limiting hours of operation between 6:30AM and 5:00PM
<AccessControlProvider type="Chaining" operator="AND">
<AccessControlProvider type="Chaining" operator="OR">
<AccessControlProvider type="Time">
<Hour>GT 6</Hour>
</AccessControlProvider>
<AccessControlProvider type="Time">
<Hour>EQ 6</Hour>
<Minute>GE 30</Minute>
</AccessControlProvider>
</AccessControlProvider>
<AccessControlProvider type="Time">
<Hour>LE 17</Hour>
</AccessControlProvider>
</AccessControlProvider>