0

如果我的用户发送一个请求,STS请求凭据:身份验证的用户与STS和API网关

AWS.config.credentials = new AWS.WebIdentityCredentials({ 
    RoleArn: 'arn:aws:iam::{id}:role/{role}', 
    WebIdentityToken: idToken, 
    RoleSessionName: VALUE 
}); 

后来,当用户发送到一个私人API网关端点的请求,通过使用RoleSessionName我能知道谁是提出请求的人。但是我们如何避免另一个用户通过使用相同的RoleSessionName来承担他的身份?

什么是使用STS和IAM角色认证用户的最佳方式?

回答

0

RoleSessionName只是假定会话的标识符。它不应该被用作区分呼叫者的机制。

在这种情况下,假设的角色是“有效的”主体。如果您希望API根据用户行为不同,请为每个用户使用独特的角色。