2

我正在使用 Amazon Cognito 和 AWS IoT 进行概念验证,我需要一些帮助。我有一切工作,我只需要锁定的东西。我的 Cognito 用户池是我的身份池唯一的身份验证提供程序。

我想根据我的用户池中用户的自定义属性来限制可以订阅的 IoT 主题。IAM 角色有可能吗?我已经可以通过在角色中输入主题过滤器来限制它,我只需要知道是否有可以在那里使用的变量。

对于我的用例,该应用程序可以有多个使用该应用程序的组织,每个组织彼此完全分离,但使用相同的代码和基础设施。我希望我可以指定用户的组织 ID,然后要求所有主题在开始时都具有用户的组织 ID。

我认为我正在寻找的远远超出了 IAM 角色可以做的事情,但我想先检查一下。

4

1 回答 1

3

自定义属性不会直接作为 IAM 策略中的策略变量公开。

我认为您可以为此使用 Cognito 用户池中的组支持。您可以将来自不同组织的用户分配给该组织的组。分配给每个组的 IAM 角色可以是您锁定 IoT 策略的角色。

使用联合身份和用户池集成,您可以获得用户的临时 AWS 凭证。在 Cognito Federated Identities 中使用基于角色的访问控制功能将确保使用分配给用户所属的 Cognito 用户池组的角色来假定凭据。

希望这可以帮助。

于 2017-03-10T07:15:27.063 回答