## Example The following JSON is an example for this standardized configuration component: ```json { "DefaultAllow": true } ``` ## Definition ### `AccessControl` The access control consists of a default setting, plus a list of rules. ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://invantive.com/schemas/defs/AccessControl.schema.json", "title": "AccessControl", "description": "Specification of ACL for a specific preset.", "type": "object", "additionalProperties": false, "properties": { "DefaultAllow": { "type": "boolean", "description": "Whether to allow access (true) or disallow (false) when no rule matches." }, "AccessControlList": { "type": ["array", "null"], "items": { "$ref": "./AccessControlElement.schema.json" }, "description": "Ordered list of ACLs. First one to apply is used." } } } ``` ### `AccessControlElement` ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://invantive.com/schemas/defs/AccessControlElement.schema.json", "title": "AccessControlElement", "description": "Specification of an ACL element.", "type": "object", "additionalProperties": false, "properties": { "Description": { "type": ["string", "null"], "description": "Optional description identifying the access control element." }, "Context": { "type": ["string", "null"], "description": "Optional context limiting the applicability of the access control element. * at the end is a wildcard." }, "Url": { "type": ["string", "null"], "description": "Optional URL. * at the end is a wildcard.", "format": "uri" }, "ErrorCode": { "type": ["string", "null"], "description": "Optional message code identifying the ACL.", }, "ErrorMessage": { "type": ["string", "null"], "description": "Optional message to show when the check fails.", }, "Allow": { "type": "boolean", "description": "Whether to allow access or deny.", "default": false }, "ValidFromUtc": { "type": ["string", "null"], "format": "date-time", "description": "Start of validity (UTC). Outside of this period the access control element is not enforced." }, "ValidToUtc": { "type": ["string", "null"], "format": "date-time", "description": "End of validity (UTC). Outside of this period the access control element is not enforced." }, "LogOnCode": { "type": ["string", "null"], "description": "Log on code." }, "DataContainerId": { "type": ["string", "null"], "description": "Data container ID." }, "IpAddressClientCidr": { "type": ["string", "null"], "description": "IP address of the client device in CIDR notation (1.2.3.4/5)." } } } ```