diff --git a/scopes/server/auth.py b/scopes/server/auth.py index 3bb7223..fadc220 100644 --- a/scopes/server/auth.py +++ b/scopes/server/auth.py @@ -48,11 +48,8 @@ class OidcAuthentication: Authenticator(request).login() def logout(self, request): - print('*** OidcAuthentication: logout') Authenticator(request).logout() -JwtAuthentication = OidcAuthentication # old name - still used? - authentication = OidcAuthentication(None) @@ -72,7 +69,6 @@ class Principal: @property def groups(self): groups = [self.group_prefix + g for g in self.data.get('groups', [])] - print('*** Principal.groups', groups) return groups def asDict(self): @@ -125,7 +121,7 @@ class Authenticator(DummyFolder): ) self.storeSession(dict(state=state, nonce=nonce, code_verifier=codeVerifier)) loginUrl = '?'.join((self.params['auth_url'], urlencode(args))) - print('***', loginUrl) + logger.debug('login: URL %s', loginUrl) req.response.redirect(loginUrl, trusted=True) def callback(self): @@ -163,14 +159,17 @@ class Authenticator(DummyFolder): req.response.redirect(self.reqUrl, trusted=True) def logout(self): - pass + cname = self.params['cookie_name'] + logger.debug('logout, cookie: %s', cname) + self.request.response.expireCookie(cname, path='/') + self.request.response.redirect(config.base_url, trusted=True) def storeSession(self, data): lifetime = int(self.params['cookie_lifetime']) options = dict( path='/', expires=formatdate(time() + lifetime, localtime=False, usegmt=True), - httponly=True, + #httponly=True, ) options['max-age'] = lifetime domain = self.params['cookie_domain'] @@ -198,7 +197,6 @@ class Authenticator(DummyFolder): @register('auth', Root) def authView(context, request): - print('*** auth', context, request['PATH_INFO']) return Authenticator(request) @register('login', Authenticator) @@ -213,5 +211,5 @@ def callback(context, request): @register('logout', Authenticator) def logout(context, request): - print('*** logout', context, request['PATH_INFO'], request.getTraversalStack()) + context.logout() return DefaultView(context, request) diff --git a/scopes/server/browser.py b/scopes/server/browser.py index 827033c..a8460e5 100644 --- a/scopes/server/browser.py +++ b/scopes/server/browser.py @@ -1,9 +1,12 @@ # scopes.server.browser import json +import logging from zope.interface import implementer from scopes.interfaces import IContainer, IReference, IView +logger = logging.getLogger('server.browser') + views = {} # registry for all views: {name: {prefix: viewClass, ...}, ...} def register(name, *contextTypes): @@ -29,6 +32,7 @@ def getView(request, ob, name): factory = nameEntry.get('') if factory is None: return None + logger.debug('getView: %s %s', ob, request['PATH_INFO']) return factory(ob, request)