AWS Cognito授权用户(如何从应用程序将用户添加到用户组?)



我正在构建一个前端有react,后端有aws dynawdb+labmda的应用程序来保存数据。我正在使用放大来处理用户身份验证,但我正在努力寻找一种处理授权的好方法。

我想使用Cognito用户池组,但似乎没有办法从我的应用程序中管理用户,因为amplify不支持更新用户以将其放入组中。我真的不想把aws控制台登录暴露给应用程序管理员,所以我似乎需要在应用程序本身找到一种方法来处理这个问题。

我可以在dynamodb中创建一个用户表来保存一个用户配置文件,其中可以有一个字段来保存我希望用户能够执行的角色,然后为管理员用户添加一个CRUD页面来更新非管理员用户的配置文件。然而,我并不特别喜欢这个选项,因为它确实是一种数据复制,而且它不支持(轻松(禁用用户的方法。

dynamodb表更新似乎可以触发lambda函数,所以当管理用户在CRUD页面上更新表时,我也考虑过以某种方式为用户触发cognito userpool角色添加,但我在连接触发器上的所有点、函数和所需权限时遇到了一点小麻烦。

如有任何协助,我们将不胜感激。

谢谢。

谢谢Dylan,这正是我所做的。我曾错误地认为,我的用户无法做到这一点,但在尝试并跟踪失败后,我能够确定如何将正确的策略应用于执行addToGroup和removeFromGroup的角色。

再次感谢,Mike

最新更新