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根據用戶行爲不同,請爲每個用戶使用獨特的角色。