diff --git a/passbook/core/views/access.py b/passbook/core/views/access.py index 1086f73be..9d1155460 100644 --- a/passbook/core/views/access.py +++ b/passbook/core/views/access.py @@ -1,9 +1,12 @@ """passbook access helper classes""" +from typing import List, Tuple + from django.contrib import messages +from django.http import HttpRequest from django.utils.translation import gettext as _ from structlog import get_logger -from passbook.core.models import Application +from passbook.core.models import Application, Provider, User from passbook.policy.engine import PolicyEngine LOGGER = get_logger() @@ -13,9 +16,9 @@ class AccessMixin: Provider functions to check application access, etc""" # request is set by view but since this Mixin has no base class - request = None + request: HttpRequest = None - def provider_to_application(self, provider): + def provider_to_application(self, provider: Provider) -> Application: """Lookup application assigned to provider, throw error if no application assigned""" try: return provider.application @@ -25,9 +28,9 @@ class AccessMixin: })) raise exc - def user_has_access(self, application, user): + def user_has_access(self, application: Application, user: User) -> Tuple[bool, List[str]]: """Check if user has access to application.""" - LOGGER.debug("Checking permissions of %s on application %s...", user, application) + LOGGER.debug("Checking permissions", user=user, application=application) policy_engine = PolicyEngine(application.policies.all()) policy_engine.for_user(user).with_request(self.request).build() return policy_engine.result diff --git a/passbook/root/settings.py b/passbook/root/settings.py index 9e44317eb..073074fa0 100644 --- a/passbook/root/settings.py +++ b/passbook/root/settings.py @@ -47,8 +47,6 @@ AUTH_USER_MODEL = 'passbook_core.User' CSRF_COOKIE_NAME = 'passbook_csrf' SESSION_COOKIE_NAME = 'passbook_session' -SESSION_ENGINE = "django.contrib.sessions.backends.db" -SESSION_CACHE_ALIAS = "default" LANGUAGE_COOKIE_NAME = 'passbook_language' AUTHENTICATION_BACKENDS = [