您可以使用以下代码示例来实现使用从ALB获取的访问令牌的API网关授权程序:
import requests
from requests_aws4auth import AWS4Auth
# 创建 AWS4Auth 对象
region = 'your-aws-region'
service = 'execute-api'
access_key = 'your-access-key'
secret_key = 'your-secret-key'
session_token = 'your-session-token' # 可选,仅在使用临时凭证时需要
aws_auth = AWS4Auth(access_key, secret_key, region, service, session_token=session_token)
# 发起请求
url = 'https://your-api-gateway-url'
headers = {'Content-Type': 'application/json'}
response = requests.get(url, headers=headers, auth=aws_auth)
# 处理响应
print(response.json())
请确保按照以下步骤配置和准备环境:
安装必要的库:
pip install requests requests_aws4auth
替换代码中的以下参数:
region:您的AWS区域(例如,us-west-2)access_key:您的AWS访问密钥IDsecret_key:您的AWS秘密访问密钥session_token:(可选)如果您使用临时凭证,则提供会话令牌url:您的API网关URL运行代码并检查响应。
此代码示例使用requests库发送GET请求,并使用AWS4Auth对象对请求进行身份验证。在创建AWS4Auth对象时,我们提供了AWS访问密钥和AWS区域。如果您使用临时凭证,则还需要提供会话令牌。
请注意,此示例假定您已经正确配置了ALB和API网关,并且已经通过ALB获取了有效的访问令牌。