来自AWS Cognito用户池的用户ID

时间:2016-06-15 15:57:24

标签: amazon-web-services amazon-cognito

我期待在我的应用程序中使用AWS Cognito User Pool。 并有几个问题:

  1. 是否可以在Cognito中存储一些敏感数据:例如用户权限(我认为没有,因为用户可以读取和写入关于他自己的数据 - 但我想确定)
  2. 如何获取/添加Id(用作外部密钥)到用户记录?我有几个选择:

    一个。利用用户名 - 但我想使用随机字符串作为ID;甚至我用这种方式填充用户名并启用别名登录 - 这个字段仍然是客户端填充的 - 所以我无法控制它。

    湾添加自定义字段 - 如何/在何处正确填充它?

    ℃。使用访问令牌的sub字段 - 没有正确的方法来获取它 - 除了base64解码访问令牌 - 看起来很容易。

1 个答案:

答案 0 :(得分:3)

  1. 目前Cognito用户池属性不支持此用例。您可以使用Cognito同步并创建数据集。您可以按用户无权访问此敏感数据集的方式配置角色。
  2. 对于#b,您可以在用户池配置的属性部分中找到自定义属性。您可以通过取消选中mutable选项使该属性不可变。请注意,这不会强制您的自定义ID的唯一性。来自Id令牌的'sub'字段可能是最佳选择,因为它也强制实现唯一性。在不解析令牌的情况下使其可用可能被视为功能,可以在AWS论坛上请求。