2017-10-05 140 views
0

我試圖實施「開發驗證的身份」爲AWS如下解釋:https://aws.amazon.com/blogs/mobile/amazon-cognito-announcing-developer-authenticated-identities/開發驗證的身份和角色

我理解正確的基本流程。

但是,我希望能夠根據我的身份(例如,基於規則的角色)獲得不同的角色,以便例如「Admin」用戶對AWS資源擁有更多權限。但是,儘管「編輯身份池」中的AWS控制檯允許我爲Cognito用戶池標識提供程序定義基於規則的角色,但它不會讓我爲定製身份驗證提供程序執行此操作。

換句話說,這個頁面描述了什麼(http://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html)可能與開發人員身份驗證身份?

我該如何做到這一點?

回答

1

目前,開發者身份驗證標識不支持基於規則的角色。不幸的是,因爲沒有一種將從GetOpenIdTokenForDeveloperIdentity返回的OIDC標記綁定到特定角色的安全方式,所以它可以交換爲針對STS配置的針對任何角色的角色,從而達到目的。我們之前已經聽到過這個請求,並將它作爲一個功能請求,將可假設的角色嵌入到OIDC令牌中,以便STS可以確認您正在承擔您被允許的角色。如果您使用基於規則的映射,我們目前僅支持GetCredentialsForIdentity。

0

當使用開發人員身份驗證後,您將使用STS AssumeRole將IAM角色分配給用戶。您將需要一種將用戶映射到角色的方法。通常情況下,DynamoDB用於此目的。注意:您用於調用STS的證書(AccessKey,角色等)需要足夠的權力來發布所需的IAM角色。然後AssumeRole創建AccessKey SecretAccessKey對以提供給用戶。請記住,這些臨時憑證是由您控制的到期日期。

STS AssumeRole

相關問題