来自 AWS Cognito 用户池的用户 ID
User Id from AWS Cognito User Pool
我期待在我的应用程序中使用 AWS Cognito 用户池。
还有几个问题:
- 是否可以在 Cognito 中存储一些敏感数据:例如用户权限(我认为不可以,因为用户可以读写关于他自己的数据 - 但我想确定)
如何get/addId(用作外键)到用户记录?我有几个选择:
一个。利用用户名——但我想使用随机字符串作为 ID;甚至我以这种方式填写用户名并为登录启用别名 - 这个字段仍然在客户端填充 - 所以我无法控制它。
b。添加自定义字段 - how/where 以正确填充它?
c。使用访问令牌的 sub
字段 - 没有正确的方法来获取它 - 除了 base64 解码访问令牌 - 看起来很老套。
- 目前 Cognito 用户池属性不支持此用例。您可以使用 Cognito 同步并创建数据集。您可以以用户无权访问此敏感数据集的方式配置您的角色。
- 对于#b,您可以在用户池配置的属性部分找到自定义属性。您可以通过取消选中可变选项来使属性不可变。请注意,这不会强制您的自定义 ID 具有唯一性。 'sub' 来自 Id 令牌的字段可能是最佳选择,因为它也强制执行唯一性。在不解析令牌的情况下使其可用可能被视为功能,可以在 AWS 论坛上请求。
我期待在我的应用程序中使用 AWS Cognito 用户池。 还有几个问题:
- 是否可以在 Cognito 中存储一些敏感数据:例如用户权限(我认为不可以,因为用户可以读写关于他自己的数据 - 但我想确定)
如何get/addId(用作外键)到用户记录?我有几个选择:
一个。利用用户名——但我想使用随机字符串作为 ID;甚至我以这种方式填写用户名并为登录启用别名 - 这个字段仍然在客户端填充 - 所以我无法控制它。
b。添加自定义字段 - how/where 以正确填充它?
c。使用访问令牌的
sub
字段 - 没有正确的方法来获取它 - 除了 base64 解码访问令牌 - 看起来很老套。
- 目前 Cognito 用户池属性不支持此用例。您可以使用 Cognito 同步并创建数据集。您可以以用户无权访问此敏感数据集的方式配置您的角色。
- 对于#b,您可以在用户池配置的属性部分找到自定义属性。您可以通过取消选中可变选项来使属性不可变。请注意,这不会强制您的自定义 ID 具有唯一性。 'sub' 来自 Id 令牌的字段可能是最佳选择,因为它也强制执行唯一性。在不解析令牌的情况下使其可用可能被视为功能,可以在 AWS 论坛上请求。