Author: Daniel Spicar - clerezza.org
Date: January 29, 2009
The permission classes represent access to system resources. [1]
Internally they are represented as classes. In this document we will not
go into the details of how to program with them but rather how to use them
in the CMS from an administrator's perspective.
Basically a permission has this following syntax
(fully.qualified.class.name "/path/to/ressource" "actions")
Example: (java.io.FilePermission "/home/john/businessplan", "read")
It is easy to see that this permission would grant a user that has it the right to read the file businessplan located in the directory /home/john/.
In the ressource path wildcards and special symbols can be used. Their interpretation depends on the permission. For FilePermission the wildcards are:
The actions that are possible depend on the permission. For FilePermission the possible actions are:
Clerezza uses its own custom permission for access to TripleCollections. The permission class is org.apache.clerezza.rdf.core.access.security.TcPermission. As a ressource it expects an URI. The possible actions are:
(org.apache.clerezza.rdf.core.access.security.TcPermission "urn:x-localinstance:/system.graph" "readwrite")
[1] Java Security Architecture, Chapter 3, http://java.sun.com/javase/6/docs/technotes/guides/security/spec/security-spec.doc3.html