Api网关授权者不断返回401未经授权

时间:2020-01-14 20:56:57

标签: amazon-web-services jwt aws-api-gateway amazon-cognito serverless

我已经设置了Api网关端点/auth/login,其中包含以下Python Lambda函数的代理:

        response = client.admin_initiate_auth(
            UserPoolId=USER_POOL_ID,
            ClientId=CLIENT_ID,
            AuthFlow='ADMIN_NO_SRP_AUTH',
            AuthParameters={
                'USERNAME': email,
                'PASSWORD': password,
            },
            ClientMetadata={
                'username': email,
                'password': password,
            }
        )

我可以使用用户名/密码凭据成功登录并收到以下响应:

{
    "id_token": "eyJraWQiOiJ...",
    "refresh_token": "eyJjdHkiOiJ...",
    "access_token": "eyJraWQiOiJ...",
    "expires_in": 3600,
    "token_type": "Bearer"
}

现在,我尝试通过邮递员或curl访问使用授权者的私有Api网关端点,并发送 access_token

Api Gateway Authorizer

curl --location --request POST 'https://my_api.endpoint.com/user/test' \
--header 'Content-Type: application/json' \
--header 'Authorization: eyJraWQiOiJ...' \
--data-raw '{
    "email": "my_test_email@stackoverflow.com"
}'

但我一直收到:

{
    "message": "Unauthorized"
}

我尝试发送 id_token ,但结果相同。我想念什么?

0 个答案:

没有答案