如何向Gramex的FormHandler传递MySQL连接的SSL参数
配置方法
Gramex FormHandler底层基于SQLAlchemy实现数据库连接,驱动的自定义连接参数可通过数据源配置下的connect_args字段直接透传。在原有配置基础上新增该字段,传入空ssl字典即可解决报错,完整配置如下:
otp: url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB' table: $TABLE connect_args: ssl: {}
说明
- 原有配置未传入SSL参数时,pymysql默认使用明文传输连接,会被开启了
--require_secure_transport=ON的MySQL服务端拦截,抛出3159错误 connect_args是SQLAlchemy引擎初始化的标准参数,Gramex会将该配置下的所有键值对完整传递给底层pymysql驱动的连接构造方法- 传入
ssl: {}时,pymysql会自动加载默认SSL配置建立加密连接,满足服务端的安全传输要求。如果服务端要求指定自定义CA证书、客户端证书校验,可在ssl字典内补充对应路径配置,普通场景下空字典即可正常连接。
内容的提问来源于stack exchange,提问作者S Anand
相关产品推荐
相关产品推荐

