如何使用Python请求发送AWS凭据?

时间:2018-01-23 23:14:05

标签: python amazon-web-services python-requests aws-api-gateway amazon-iam

我在API网关上创建了以下资源:

https:/myapp.execute-api.us-east-1.amazonaws.com/zzz/yyy/xxx

它只能用于我拥有的AWS凭证:

access_key :"access_example"
secret_key:"secret_example"
session_token: "session_example"

我知道如何将它与邮递员一起使用,但不知道如何使用python请求。你能救我吗?

enter image description here

我尝试在标头中传递凭据,但它没有用。

2 个答案:

答案 0 :(得分:3)

首先,将您的凭据放入~/.aws/credentials的正确权限文件中,必要时在homedir中创建.aws子目录。此文件的语法是.ini样式,带有节标题,如下所示:

[default]
aws_access_key_id = AKIASOMETHING
aws_secret_access_key = shhhhhh

您不应直接使用请求。使用API​​Gateway的官方Python绑定,它为AWS提供高级接口。

http://boto3.readthedocs.io/en/latest/reference/services/apigateway.html

答案 1 :(得分:0)

我相信你问的是如何签署HTTP请求基本上将身份验证信息添加到AWS请求中。 AWS使用SIG v4,您可以自己实现,也可以使用现有的python库,例如:

https://github.com/jmenga/requests-aws-sign#signing-api-gateway-requests