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

使用Python编写API Gateway端点测试遇SSL认证问题

解决API Gateway自定义域名SSL证书验证失败问题

问题分析

调用绑定自定义域名的API Gateway时出现[SSL: CERTIFICATE_VERIFY_FAILED]证书验证错误,但使用官方API Gateway域名能正常返回403响应,说明认证逻辑本身无问题,故障点在于自定义域名的SSL证书信任链未被Python环境识别。

解决方案

1. 确认SSL证书配置有效性

  • 检查自定义域名绑定的证书:需为公共信任CA颁发的有效证书(比如AWS ACM证书,要确保证书覆盖该自定义域名,且部署在对应AWS区域);若为自签名证书,Python默认不会信任,需手动导入。
  • 验证证书链完整性:用浏览器访问自定义域名的/health端点,查看证书是否显示"安全",确认颁发者是否在系统信任列表中。

2. 在Python请求中处理SSL验证

方法一:指定信任的CA证书(推荐生产/测试环境使用)

将自定义域名的根CA证书导出为.pem格式文件,在请求中通过verify参数指定证书路径:

import requests
from aws_requests_auth.aws_auth import AWSRequestsAuth
import boto3

api_ep = "<custom domain>.com"

session = boto3.Session()
credentials = session.get_credentials()

auth = AWSRequestsAuth( aws_access_key = credentials.access_key,
                        aws_secret_access_key = credentials.secret_key,
                        aws_host = api_ep,
                        aws_region = "<region>",
                        aws_service = "execute-api")

# 指定CA证书路径
response = requests.get("https://" + api_ep + "/health", auth=auth, verify="/path/to/your/root-ca.pem")

print(response.content)

方法二:临时禁用SSL验证(仅用于本地测试,不安全)

若仅做临时测试,可关闭SSL验证,同时关闭对应的安全警告:

import requests
from aws_requests_auth.aws_auth import AWSRequestsAuth
import boto3
import urllib3

# 关闭不安全请求警告
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

api_ep = "<custom domain>.com"

session = boto3.Session()
credentials = session.get_credentials()

auth = AWSRequestsAuth( aws_access_key = credentials.access_key,
                        aws_secret_access_key = credentials.secret_key,
                        aws_host = api_ep,
                        aws_region = "<region>",
                        aws_service = "execute-api")

# 禁用SSL验证
response = requests.get("https://" + api_ep + "/health", auth=auth, verify=False)

print(response.content)

3. 排查本地环境CA证书问题

如果是本地Python环境的CA证书库缺失导致信任失败,可更新certifi库(requests依赖的CA证书管理工具):

pip install --upgrade certifi

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 22:01:17