You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask部署Azure后Google OAuth认证失败,报InsecureTransportError错误

解决Flask部署到Azure后的OAuth InsecureTransportError问题

这个错误的核心原因是Azure Web Services通过反向代理转发请求,到达Flask应用的实际请求是HTTP协议,导致oauthlib判定传输不安全,即便外部访问用的是HTTPS。以下是具体解决步骤:

1. 让Flask识别反向代理的HTTPS请求

在Flask应用代码中添加Werkzeug的ProxyFix中间件,同时设置首选URL方案为HTTPS:

from flask import Flask
from werkzeug.middleware.proxy_fix import ProxyFix

app = Flask(__name__)
# 强制生成的URL使用HTTPS
app.config['PREFERRED_URL_SCHEME'] = 'https'
# 信任反向代理传递的X-Forwarded-Proto头,识别实际请求协议
app.wsgi_app = ProxyFix(app.wsgi_app, x_proto=1)

2. 确认OAuth客户端重定向URI配置

检查Google OAuth控制台中的重定向地址,确保完全匹配https://testapp.azurewebsites.net/google_login/callback/,包括末尾的斜杠,避免拼写错误。

3. 开启Azure Web应用的HTTPS强制

登录Azure门户,进入你的Web应用:

  • 找到「设置」>「配置」>「常规设置」
  • 开启「HTTPS Only」选项,强制所有外部请求使用HTTPS。

开发环境使用127.0.0.1正常是因为oauthlib默认信任本地HTTP请求,但生产环境必须通过上述配置让Flask正确识别Azure反向代理后的HTTPS协议。

内容的提问来源于stack exchange,提问作者user3525290

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:52:10