Source code for opennode.oms.security.permissions
from grokcore.security import Permission, name, title, description
from zope.securitypolicy.role import Role as ZopeRole
[docs]class Role(ZopeRole):
"""Oms roles act as permissions"""
nick_to_role = {}
role_to_nick = {}
def __init__(self, name, nick):
super(Role, self).__init__(name, name)
self.nick = nick
if nick:
self.nick_to_role[nick] = self
self.role_to_nick[self.id] = nick
[docs]class Nothing(Permission):
name('oms.nothing')
title('No permissions')
description('Every user has this permission, even anonymous')
[docs]class Read(Permission):
name('read')
[docs]class Modify(Permission):
name('modify')
[docs]class Create(Permission):
name('create')
[docs]class Add(Permission):
name('add')
[docs]class Remove(Permission):
name('remove')
[docs]class Delete(Permission):
name('delete')
[docs]class View(Permission):
name('view')
[docs]class Traverse(Permission):
name('traverse')
[docs]class Rest(Permission):
name('rest')
description('Used to allow access on rest API')