[Repoze-checkins] r1630 - repoze.bfg/trunk/repoze/bfg
Chris McDonough
chrism at agendaless.com
Wed Aug 20 09:22:56 EDT 2008
Author: Chris McDonough <chrism at agendaless.com>
Date: Wed Aug 20 09:22:56 2008
New Revision: 1630
Log:
Make seurity policies pickleable again.
Modified:
repoze.bfg/trunk/repoze/bfg/security.py
Modified: repoze.bfg/trunk/repoze/bfg/security.py
==============================================================================
--- repoze.bfg/trunk/repoze/bfg/security.py (original)
+++ repoze.bfg/trunk/repoze/bfg/security.py Wed Aug 20 09:22:56 2008
@@ -136,6 +136,12 @@
return logger
return logger
+def get_remoteuser(request):
+ user_id = request.environ.get('REMOTE_USER')
+ if user_id:
+ return [user_id]
+ return []
+
def RemoteUserACLSecurityPolicy(logger=None):
""" A security policy which:
@@ -155,12 +161,15 @@
"""
logger = debug_logger(logger)
- def get_principals(request):
- user_id = request.environ.get('REMOTE_USER')
- if user_id:
- return [user_id]
+ return ACLSecurityPolicy(logger, get_remoteuser)
+
+def get_who_principals(request):
+ identity = request.environ.get('repoze.who.identity')
+ if not identity:
return []
- return ACLSecurityPolicy(logger, get_principals)
+ principals = [identity['repoze.who.userid']]
+ principals.extend(identity.get('groups', []))
+ return principals
def RepozeWhoIdentityACLSecurityPolicy(logger=None):
""" A security policy which:
@@ -183,15 +192,7 @@
"""
logger = debug_logger(logger)
- def get_principals(request):
- identity = request.environ.get('repoze.who.identity')
- if not identity:
- return []
- principals = [identity['repoze.who.userid']]
- principals.extend(identity.get('groups', []))
- return principals
-
- return ACLSecurityPolicy(logger, get_principals)
+ return ACLSecurityPolicy(logger, get_who_principals)
class PermitsResult:
def __init__(self, ace, acl, permission, principals, context):
More information about the Repoze-checkins
mailing list