diff --git a/app/.env b/app/.env index 98dfe55..bd309b8 100755 --- a/app/.env +++ b/app/.env @@ -35,9 +35,10 @@ UWSGI_DISABLE_LOGGING=true UWSGI_MEMORY_REPORT=true UWSGI_ENABLE_THREADS=true -CASDOOR_ENDPOINT=http://10.10.10.14:18000 +# casdoor配置 +CASDOOR_ENDPOINT=https://casdoor.dhdx.fun CASDOOR_CLIENT_ID=8f323670e073612794ef CASDOOR_CLIENT_SECRET=bc37d89f9220fe5a46c17125c731d2daf22f1299 -CASDOOR_REDIRECT_URI=http://10.10.10.14:18019/callback +CASDOOR_REDIRECT_URI=https://zd.dhdx.fun/callback CASDOOR_ORGANIZATION_NAME=built-in CASDOOR_APPLICATION_NAME=4an \ No newline at end of file diff --git a/app/__pycache__/app.cpython-312.pyc b/app/__pycache__/app.cpython-312.pyc index 8446e01..8f857a8 100644 Binary files a/app/__pycache__/app.cpython-312.pyc and b/app/__pycache__/app.cpython-312.pyc differ diff --git a/app/__pycache__/config.cpython-312.pyc b/app/__pycache__/config.cpython-312.pyc index b63d425..326e0ad 100644 Binary files a/app/__pycache__/config.cpython-312.pyc and b/app/__pycache__/config.cpython-312.pyc differ diff --git a/app/app.py b/app/app.py index 6e35e85..1c5a7b1 100755 --- a/app/app.py +++ b/app/app.py @@ -58,6 +58,8 @@ def create_app(): login_manager = LoginManager() login_manager.init_app(app) login_manager.login_view = 'login' + # 默认未登录提示改为中文 + login_manager.login_message = '请先登录以访问此页面' @login_manager.user_loader def load_user(user_id): diff --git a/app/config.py b/app/config.py index 407f2fd..da16bee 100755 --- a/app/config.py +++ b/app/config.py @@ -30,4 +30,8 @@ class Config: CASDOOR_CLIENT_SECRET = os.environ.get('CASDOOR_CLIENT_SECRET') CASDOOR_ORGANIZATION_NAME = os.environ.get('CASDOOR_ORGANIZATION_NAME', 'built-in') CASDOOR_APPLICATION_NAME = os.environ.get('CASDOOR_APPLICATION_NAME', 'app-built-in') - CASDOOR_REDIRECT_URI = os.environ.get('CASDOOR_REDIRECT_URI', 'http://localhost:18061/callback') \ No newline at end of file + CASDOOR_REDIRECT_URI = os.environ.get('CASDOOR_REDIRECT_URI', 'http://localhost:18061/callback') + + # 会话 Cookie 配置(跨域 SSO 时建议设置) + SESSION_COOKIE_SAMESITE = os.environ.get('SESSION_COOKIE_SAMESITE', 'Lax') + SESSION_COOKIE_SECURE = os.environ.get('SESSION_COOKIE_SECURE', 'False').lower() == 'true' \ No newline at end of file diff --git a/app/logs/app.log b/app/logs/app.log index 9eca99c..0533621 100644 --- a/app/logs/app.log +++ b/app/logs/app.log @@ -1,69 +1,40 @@ -2025-12-10 15:06:31 INFO: 重定向到 Casdoor 授权页面 -2025-12-10 15:06:39 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'http://10.10.10.14:18000', 'aud': '8f323670e073612794ef', 'preferred_username': 'test', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008'} -2025-12-10 15:06:39 INFO: 更新用户信息: 韦矍森(19977899008) -2025-12-10 15:06:39 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 -2025-12-10 15:06:39 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:06:49 INFO: 用户 韦矍森 访问统计页面 -2025-12-10 15:06:50 INFO: 用户 韦矍森 访问历史记录页面 -2025-12-10 15:06:51 INFO: 用户 韦矍森 访问统计页面 -2025-12-10 15:06:54 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:09:46 INFO: 应用启动 -2025-12-10 15:09:46 INFO: 错误处理器初始化完成 -2025-12-10 15:11:12 INFO: 应用启动 -2025-12-10 15:11:12 INFO: 错误处理器初始化完成 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:12 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:16 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:11:16 WARNING: 未授权访问:用户 New User - usp76h 尝试访问仪表盘页面 -2025-12-10 15:14:09 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:15:06 INFO: 用户 韦矍森 开始同步离线设备 -2025-12-10 15:15:06 INFO: 同步完成:创建了 8 个工单,恢复了 7 个设备 -2025-12-10 15:15:19 INFO: 用户 韦矍森 访问统计页面 -2025-12-10 15:15:20 INFO: 用户 韦矍森 访问历史记录页面 -2025-12-10 15:15:21 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:15:42 INFO: 用户 韦矍森(19977899008) 登出 -2025-12-10 15:16:07 INFO: 重定向到 Casdoor 授权页面 -2025-12-10 15:16:22 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'http://10.10.10.14:18000', 'aud': '8f323670e073612794ef', 'preferred_username': 'test', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008'} -2025-12-10 15:16:22 INFO: 更新用户信息: 韦矍森(19977899008) -2025-12-10 15:16:22 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 -2025-12-10 15:16:23 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:16:43 INFO: 用户 韦矍森 访问历史记录页面 -2025-12-10 15:16:44 INFO: 用户 韦矍森 访问统计页面 -2025-12-10 15:17:08 INFO: 用户 韦矍森 访问历史记录页面 -2025-12-10 15:17:12 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:17:15 INFO: 用户 韦矍森 访问统计页面 -2025-12-10 15:17:16 INFO: 用户 韦矍森 访问历史记录页面 -2025-12-10 15:25:09 INFO: 应用启动 -2025-12-10 15:25:09 INFO: 错误处理器初始化完成 -2025-12-10 15:26:06 INFO: 应用启动 -2025-12-10 15:26:06 INFO: 错误处理器初始化完成 -2025-12-10 15:27:03 INFO: 应用启动 -2025-12-10 15:27:03 INFO: 错误处理器初始化完成 -2025-12-10 15:27:15 INFO: 应用启动 -2025-12-10 15:27:15 INFO: 错误处理器初始化完成 -2025-12-10 15:27:34 INFO: 应用启动 -2025-12-10 15:27:34 INFO: 错误处理器初始化完成 -2025-12-10 15:27:53 INFO: 应用启动 -2025-12-10 15:27:53 INFO: 错误处理器初始化完成 -2025-12-10 15:28:44 INFO: 用户 韦矍森 访问仪表盘页面 -2025-12-10 15:28:54 INFO: 应用启动 -2025-12-10 15:28:54 INFO: 错误处理器初始化完成 -2025-12-10 15:28:54 INFO: 用户信息已更新: 农远灵(19978825450) -> branch=红水河支局, role=装维员 -2025-12-10 15:29:14 INFO: 用户信息已更新: 农远灵(19978825450) -> branch=电厂支局, role=装维员 -2025-12-10 15:30:20 INFO: 用户信息已更新: 韦矍森(19977899008) -> branch=交付中心, role=管理员 -2025-12-10 15:30:22 INFO: 用户 韦矍森(19977899008) 登出 -2025-12-10 15:30:32 INFO: 重定向到 Casdoor 授权页面 -2025-12-10 15:30:32 INFO: Casdoor 用户信息: {'sub': '92501c0e-db14-4def-8ded-cb8337d8acdb', 'iss': 'http://10.10.10.14:18000', 'aud': '8f323670e073612794ef', 'preferred_username': 'admin', 'name': 'Admin', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '18878797071'} -2025-12-10 15:30:32 INFO: 创建新用户: Admin(18878797071) -2025-12-10 15:30:32 INFO: 用户 Admin(18878797071) 通过 Casdoor 登录成功 -2025-12-10 15:30:32 INFO: 用户 Admin 访问仪表盘页面 -2025-12-10 15:32:06 INFO: 应用启动 -2025-12-10 15:32:06 INFO: 错误处理器初始化完成 +2025-12-10 16:31:53 INFO: 应用启动 +2025-12-10 16:31:53 INFO: 错误处理器初始化完成 +2025-12-10 16:32:45 INFO: 应用启动 +2025-12-10 16:32:45 INFO: 错误处理器初始化完成 +2025-12-10 16:36:04 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:36:13 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'https://casdoor.dhdx.fun', 'aud': '8f323670e073612794ef', 'preferred_username': 'weijuesen', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008', 'groups': ['dahua/yunzhongtai']} +2025-12-10 16:36:13 INFO: 更新用户信息: 韦矍森(19977899008) +2025-12-10 16:36:13 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 +2025-12-10 16:36:13 INFO: 用户 韦矍森 访问仪表盘页面 +2025-12-10 16:36:16 INFO: 用户 韦矍森(19977899008) 登出 +2025-12-10 16:38:28 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:38:29 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'https://casdoor.dhdx.fun', 'aud': '8f323670e073612794ef', 'preferred_username': 'weijuesen', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008', 'groups': ['dahua/yunzhongtai']} +2025-12-10 16:38:29 INFO: 更新用户信息: 韦矍森(19977899008) +2025-12-10 16:38:29 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 +2025-12-10 16:38:29 INFO: 用户 韦矍森 访问仪表盘页面 +2025-12-10 16:38:31 INFO: 用户 韦矍森(19977899008) 登出 +2025-12-10 16:42:35 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:42:45 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'https://casdoor.dhdx.fun', 'aud': '8f323670e073612794ef', 'preferred_username': 'weijuesen', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008', 'groups': ['dahua/yunzhongtai']} +2025-12-10 16:42:45 INFO: 更新用户信息: 韦矍森(19977899008) +2025-12-10 16:42:45 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 +2025-12-10 16:42:45 INFO: 用户 韦矍森 访问仪表盘页面 +2025-12-10 16:42:47 INFO: 用户 韦矍森(19977899008) 登出 +2025-12-10 16:42:52 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:43:21 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'https://casdoor.dhdx.fun', 'aud': '8f323670e073612794ef', 'preferred_username': 'weijuesen', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008', 'groups': ['dahua/yunzhongtai']} +2025-12-10 16:43:21 INFO: 更新用户信息: 韦矍森(19977899008) +2025-12-10 16:43:21 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 +2025-12-10 16:43:21 INFO: 用户 韦矍森 访问仪表盘页面 +2025-12-10 16:43:23 INFO: 用户 韦矍森(19977899008) 登出 +2025-12-10 16:46:46 INFO: 应用启动 +2025-12-10 16:46:46 INFO: 错误处理器初始化完成 +2025-12-10 16:47:46 INFO: 应用启动 +2025-12-10 16:47:46 INFO: 错误处理器初始化完成 +2025-12-10 16:50:50 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:50:57 INFO: Casdoor 用户信息: {'sub': '798f4436-fbb6-45f4-bf0c-6e1cf4add605', 'iss': 'https://casdoor.dhdx.fun', 'aud': '8f323670e073612794ef', 'preferred_username': 'weijuesen', 'name': '韦矍森', 'email': 'voole@vip.qq.com', 'email_verified': True, 'picture': 'https://cdn.casbin.org/img/casbin.svg', 'phone': '19977899008', 'groups': ['dahua/yunzhongtai']} +2025-12-10 16:50:57 INFO: 更新用户信息: 韦矍森(19977899008) +2025-12-10 16:50:57 INFO: 用户 韦矍森(19977899008) 通过 Casdoor 登录成功 +2025-12-10 16:50:57 INFO: 用户 韦矍森 访问仪表盘页面 +2025-12-10 16:50:59 INFO: 用户 韦矍森(19977899008) 登出 +2025-12-10 16:50:59 INFO: 重定向到 Casdoor 授权页面 +2025-12-10 16:51:25 INFO: 重定向到 Casdoor 授权页面 diff --git a/app/templates/base.html b/app/templates/base.html index 4978de4..be2f993 100755 --- a/app/templates/base.html +++ b/app/templates/base.html @@ -95,7 +95,13 @@
{% if not request.endpoint == 'login' %} - {% with messages = get_flashed_messages() %} + {% with raw_messages = get_flashed_messages() %} + {% set messages = [] %} + {% for m in raw_messages %} + {% if not (current_user.is_authenticated and m == '请先登录以访问此页面') %} + {% set _ = messages.append(m) %} + {% endif %} + {% endfor %} {% if messages %}