AuthZ Manifest
On this page
The Manifest is used to define the ZTAuth* models.
Below is an example of an AuthZ Manifest
:
{
"metadata": {
"kind": "authz",
"name": "playground-cedar",
"description": "A Permguard playground using the Cedar language.",
"author": "Nitro Agility S.r.l.",
"license": "Apache-2.0"
},
"runtimes": {
"cedar0.0+": {
"language": {
"name": "cedar",
"version": "0.0+"
},
"engine": {
"name": "permguard",
"version": "0.0+",
"distribution": "community"
}
}
},
"partitions": {
"/": {
"runtime": "cedar0.0+",
"schema": false
}
}
}
Metadata
This section defines the metadata of the authorization model.
Runtime
This section defines the available runtimes required by the authorization model. Each of these runtimes is associated with a specific language and engine.
Both of them have a version, and the + means from that version to any other version. Without it, the version is fixed.
Partitions
This section defines the partitions of the authorization model and mandates the presence of a root
partition. Each partition is associated with a specific runtime and allows specifying if a schema is required.
Along with this, it is required to specify the location, which has a path and a mode (file
or directory
).