[Checkins]
SVN: grokcore.security/trunk/src/grokcore/security/util.py
Also introduce protect_setattr helper
Philipp von Weitershausen
philikon at philikon.de
Fri Aug 1 07:56:07 EDT 2008
Log message for revision 89122:
Also introduce protect_setattr helper
Changed:
U grokcore.security/trunk/src/grokcore/security/util.py
-=-
Modified: grokcore.security/trunk/src/grokcore/security/util.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/util.py 2008-08-01 11:55:16 UTC (rev 89121)
+++ grokcore.security/trunk/src/grokcore/security/util.py 2008-08-01 11:56:06 UTC (rev 89122)
@@ -18,6 +18,7 @@
from zope.security.checker import NamesChecker, defineChecker
from zope.security.interfaces import IPermission
from zope.app.security.protectclass import protectName
+from zope.app.security.protectclass import protectSetAttribute
def protect_getattr(class_, name, permission=None):
# Define an attribute checker using zope.app.security's
@@ -31,6 +32,17 @@
protectName(class_, name, permission)
+def protect_setattr(class_, name, permission=None):
+ # Define a set attribute checker. If permission is not supplied,
+ # it defaults to 'zope.Pubic'. If a permission has been supplied,
+ # we make sure the permission has actually been defined.
+ if permission is None:
+ permission = 'zope.Public'
+ else:
+ check_permission(class_, permission)
+
+ protectSetAttribute(class_, name, permission)
+
def make_checker(factory, view_factory, permission, method_names=None):
"""Make a checker for a view_factory associated with factory.
More information about the Checkins
mailing list