diff --git a/src/snek/system/view.py b/src/snek/system/view.py
index 4a6e7a1..981a2e5 100644
--- a/src/snek/system/view.py
+++ b/src/snek/system/view.py
@@ -8,7 +8,7 @@ class BaseView(web.View):
     login_required = False
 
     async def _iter(self):
-        if self.login_required and not self.session.get("logged_in"):
+        if self.login_required and (not self.session.get("logged_in") or not self.session.get("uid")):
             return web.HTTPFound("/")
         return await super()._iter()