mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-09 23:34:51 +01:00
68 lines
2 KiB
JSON
68 lines
2 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"title": "TR-181 Permissions Schema",
|
|
"type": "object",
|
|
"properties": {
|
|
"tr181": {
|
|
"type": "object",
|
|
"required": ["name", "instance", "secure_role", "permission"],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Name of the TR-181 profile or configuration"
|
|
},
|
|
"instance": {
|
|
"type": "integer",
|
|
"description": "Instance identifier"
|
|
},
|
|
"secure_role": {
|
|
"type": "boolean",
|
|
"description": "Whether this role is secure"
|
|
},
|
|
"permission": {
|
|
"type": "array",
|
|
"description": "List of TR-181 permissions by object path",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["object", "perm"],
|
|
"properties": {
|
|
"object": {
|
|
"type": "string",
|
|
"description": "TR-181 object path or parameter name"
|
|
},
|
|
"perm": {
|
|
"type": "array",
|
|
"description": "List of permissions for the given object",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": [
|
|
"PERMIT_NONE",
|
|
"PERMIT_ALL",
|
|
"PERMIT_GET",
|
|
"PERMIT_GET_INST",
|
|
"PERMIT_OBJ_INFO",
|
|
"PERMIT_CMD_INFO",
|
|
"PERMIT_SET",
|
|
"PERMIT_ADD",
|
|
"PERMIT_DEL",
|
|
"PERMIT_OPER",
|
|
"PERMIT_SUBS_VAL_CHANGE",
|
|
"PERMIT_SUBS_OBJ_ADD",
|
|
"PERMIT_SUBS_OBJ_DEL",
|
|
"PERMIT_SUBS_EVT_OPER_COMP"
|
|
]
|
|
},
|
|
"uniqueItems": true
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"minItems": 1
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": ["tr181"],
|
|
"additionalProperties": false
|
|
}
|