X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=bluechips%2Flib%2Fpermissions.py;h=4a30fdc3e0c66b59ab27bc7b866aa1b6eb276ca4;hb=a59d19c0581702321ebb6f89ab20f158cdc9d7bc;hp=d2a9e8c8b0e64260143a6a470fc356e8b2552808;hpb=14c6599686b5db6c44ad78f85dd6ede9340d4d1a;p=bluechips.git diff --git a/bluechips/lib/permissions.py b/bluechips/lib/permissions.py index d2a9e8c..4a30fdc 100644 --- a/bluechips/lib/permissions.py +++ b/bluechips/lib/permissions.py @@ -6,21 +6,18 @@ from authkit.authenticate import AddDictToEnviron from authkit.authorize import NotAuthenticatedError, NotAuthorizedError from authkit.permissions import RequestPermission -from sqlalchemy.exceptions import InvalidRequestError - from bluechips import model from bluechips.model import meta class BlueChipUser(RequestPermission): def check(self, app, environ, start_response): if 'REMOTE_USER' not in environ: - raise NotAuthenticatedError('Not Authenticated') - try: - environ['user'] = meta.Session.query(model.User).\ - filter_by(username=unicode(environ['REMOTE_USER'])).\ - one() - except InvalidRequestError: - raise NotAuthorizedError('You are not allowed access.') + raise NotAuthenticatedError('Not Authenticated') # pragma: nocover + environ['user'] = meta.Session.query(model.User).\ + filter_by(username=unicode(environ['REMOTE_USER'])).\ + first() + if environ['user'] == None: + raise NotAuthorizedError('You are not allowed access.') # pragma: nocover return app(environ, start_response) class DummyAuthenticate(AddDictToEnviron):