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

Python 3.12用boto3连接AWS Glue遇SSL证书验证失败错误(_ssl.c:1000)

解决AWS Glue boto3连接SSL验证失败问题

1. 直接指定可信证书路径(绕过venv权限问题)

  • 下载可信CA证书(比如AWS官方根证书或系统自带的可信证书),放到你拥有读写权限的目录(例如C:\Users\你的用户名\certs\cacert.pem)
  • 通过两种方式让boto3使用该证书:
    • 方式一:设置环境变量
      import os
      os.environ['REQUESTS_CA_BUNDLE'] = r'C:\Users\你的用户名\certs\cacert.pem'
      os.environ['SSL_CERT_FILE'] = r'C:\Users\你的用户名\certs\cacert.pem'
      
    • 方式二:初始化boto3客户端时指定验证路径
      import boto3
      glue_client = boto3.client(
          'glue',
          region_name='你的AWS区域',
          verify=r'C:\Users\你的用户名\certs\cacert.pem'
      )
      

2. 修复venv的certifi权限问题

  • 右键点击.venv文件夹,选择「属性」→「安全」→「高级」
  • 点击「更改权限」,确保你的用户账号拥有「完全控制」权限,勾选「替换子容器和对象的权限」后应用设置,再重试证书安装操作
  • 若仍失败,用管理员权限打开命令提示符,进入venv的Scripts目录(如cd .venv\Scripts),激活虚拟环境后重新运行证书安装命令

3. 临时禁用SSL验证(仅测试用,不推荐生产环境)

  • 若之前设置ssl._create_unverified_context未生效,确保boto3在设置后导入:
    import ssl
    ssl._create_default_https_context = ssl._create_unverified_context
    import boto3
    glue_client = boto3.client('glue', region_name='你的AWS区域')
    
  • 或直接在客户端初始化时关闭验证:
    glue_client = boto3.client('glue', region_name='你的AWS区域', verify=False)
    

4. 排查网络与安全软件干扰

  • 确认工作站是否新增了代理服务器,或防火墙、EDR等安全软件拦截了SSL连接
  • 临时关闭安全软件测试,或配置安全软件允许Python脚本访问AWS Glue域名(格式:glue.你的区域.amazonaws.com)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 04:09:58