如何使用来自用户池的 SAML 身份验证的令牌响应来检索 AWS 临时访问密钥并进行 API 网关调用?
我已经配置了一个带有关联应用程序客户端的 Cognito 用户池。我已将 Okta 配置为第 3 方 SAML 身份提供程序。使用亚马逊托管的登录https://[cognito domain name]/login?response_type=token&client_id=[your App client id]&redirect_uri=[your App client redirect URL]
,我可以重定向到我的 ReactJS 应用程序,并#access_token
在标题中添加。
我现在正在尝试使用#access_token
调用 API 网关。我一直在关注本指南以及 aws-amplify。据我了解,我需要使用#access_token
获取 AWS 访问密钥来调用 API 网关。
我正在尝试使用以下代码执行此操作:
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:xxxxxxx-xxxx-xxxx-xxxx-xxxxxx',
Logins: {
'cognito-idp.us-east-1.amazonaws.com/us-east-1_xxxxxx': #access_token
}
});
但不确定这如何与 aws-amplify 集成,而且我还没有成功检索 AWS 临时访问密钥来进行 API Gateway 调用。
我以前使用 Cognito 用户池中的用户进行这项工作,但现在我需要将 Okta 作为身份提供者。