diff options
Diffstat (limited to 'repoze/bfg/security.py')
| -rw-r--r-- | repoze/bfg/security.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/repoze/bfg/security.py b/repoze/bfg/security.py index 6f2c858e3..21a0a3f2a 100644 --- a/repoze/bfg/security.py +++ b/repoze/bfg/security.py @@ -1,4 +1,6 @@ from zope.interface import implements +from zope.component import queryUtility + from zope.location.location import LocationIterator from repoze.bfg.interfaces import ISecurityPolicy @@ -11,6 +13,12 @@ Authenticated = 'system.Authenticated' Allow = 'Allow' Deny = 'Deny' +def has_permission(permission, context, request): + policy = queryUtility(ISecurityPolicy) + if policy is None: + return True + return policy.permits(context, request, permission) + class ACLAuthorizer(object): def __init__(self, context, logger=None): |
