summaryrefslogtreecommitdiffstats
path: root/keystone-moon/examples/moon/policies/policy_authz/assignment.json
diff options
context:
space:
mode:
Diffstat (limited to 'keystone-moon/examples/moon/policies/policy_authz/assignment.json')
-rw-r--r--keystone-moon/examples/moon/policies/policy_authz/assignment.json67
1 files changed, 67 insertions, 0 deletions
diff --git a/keystone-moon/examples/moon/policies/policy_authz/assignment.json b/keystone-moon/examples/moon/policies/policy_authz/assignment.json
new file mode 100644
index 00000000..ebab0ec6
--- /dev/null
+++ b/keystone-moon/examples/moon/policies/policy_authz/assignment.json
@@ -0,0 +1,67 @@
+{
+ "subject_assignments": {
+ "subject_security_level":{
+ "admin": ["high"],
+ "demo": ["medium"]
+ },
+ "domain":{
+ "admin": ["ft"],
+ "demo": ["xx"]
+ },
+ "role": {
+ "admin": ["admin"],
+ "demo": ["dev"]
+ }
+ },
+
+ "action_assignments": {
+ "resource_action":{
+ "pause": ["vm_admin"],
+ "unpause": ["vm_admin"],
+ "start": ["vm_admin"],
+ "stop": ["vm_admin"],
+ "list": ["vm_access", "vm_admin"],
+ "create": ["vm_admin"],
+ "storage_list": ["storage_access"],
+ "download": ["storage_access"],
+ "post": ["storage_admin"],
+ "upload": ["storage_admin"]
+ },
+ "access": {
+ "pause": ["write"],
+ "unpause": ["write"],
+ "start": ["write"],
+ "stop": ["write"],
+ "list": ["read"],
+ "create": ["write"],
+ "storage_list": ["read"],
+ "download": ["read"],
+ "post": ["write"],
+ "upload": ["write"]
+ }
+ },
+
+ "object_assignments": {
+ "object_security_level": {
+ "servers": ["low"],
+ "vm1": ["low"],
+ "vm2": ["medium"],
+ "file1": ["low"],
+ "file2": ["medium"]
+ },
+ "type": {
+ "servers": ["computing"],
+ "vm1": ["computing"],
+ "vm2": ["computing"],
+ "file1": ["storage"],
+ "file2": ["storage"]
+ },
+ "id": {
+ "servers": ["servers"],
+ "vm1": ["vm1"],
+ "vm2": ["vm2"],
+ "file1": ["file1"],
+ "file2": ["file2"]
+ }
+ }
+}