代码中的AWS授权 - {" message":"请求中包含的安全令牌无效。" }

时间:2018-01-11 18:57:28

标签: python amazon-web-services authorization aws-lambda

我试图以requests.get(url, auth=auth)的形式在我的Lambda函数中调用API调用。

我有API端点的URL,但我遇到了授权部分的问题。我导入了一个等效的Requests-aws4auth包,并按照these instructions从Boto3获取了我的访问密钥和密钥。

session = boto3.Session()
credentials = session.get_credentials()
credentials = credentials.get_frozen_credentials()
access_key = credentials.access_key
secret_key = credentials.secret_key
auth = AWS4AuthHandler(access_key=access_key, secret_key=secret_key, service_name='execute-api', region_name='us-west-2')
brand_info = requests.get(url, auth=auth).json()

然而,brand_info返回:

{"message": "The security token included in the request is invalid." }

我假设这是我的访问权限和密钥的问题,如果是这样的话,我是否错过了获取正确访问/密钥的任何步骤?

1 个答案:

答案 0 :(得分:3)

您还需要获取安全令牌并将其传递。您可以将其作为:

获取
token = credentials.token