我已经设置了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 :
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 ,但结果相同。我想念什么?