使用Postman使用Cognito您的用户池用户签署AWS请求

时间:2016-08-11 13:05:50

标签: amazon-web-services postman amazon-iam amazon-cognito aws-api-gateway

我正在尝试向AWS API Gateway发送经过身份验证的请求。客户端将针对Cognito您的用户池进行身份验证,然后从与用户池中已登录用户对应的关联Cognito Identity Pool中获取令牌。我正在尝试使用Postman来模拟这样的请求。

This post表明命令<executions> <execution> <goals> <goal>execute</goal> </goals> </execution> </executions> 可用于获取Postman签署请求所需的AccessKeyId和SecretKey。但是,当我尝试使用Cognito User Pool控制台中的用户的aws cognito-identity get-credentials-for-identity属性运行它时:

sub

如果我尝试使用AWS控制台中显示的关联身份池中的身份ID(我选择了一个具有2&#34;链接登录&#34;),则会发生同样的事情。

2 个答案:

答案 0 :(得分:1)

API网关现在与“Cognito Your User Pool”进行本机集成,因此您可以直接传递身份令牌 - api gateway docs。您链接的帖子已过时

答案 1 :(得分:1)

您需要传递登录地图:

--logins (map)
A  set  of  optional  name-value  pairs  that  map provider names to
provider tokens.

Shorthand Syntax:

    KeyName1=string,KeyName2=string

JSON Syntax:

    {"string": "string"
        ...}

这种语法对我有用:

aws cognito-identity get-credentials-for-identity \
    --identity-id us-east-1:aaaa-bbb-ccc-bc54-rrrrrrr \
    --logins graph.facebook.com=kdajbdjkabkjbkjbkdbsckslcjxb

注意:--identity-id不是身份池ID,而是身份浏览器中的身份。