【问题标题】:Which parameter can be used as primary key from AWS Cognito?哪个参数可以用作 AWS Cognito 的主键?
【发布时间】:2022-01-16 10:53:40
【问题描述】:

我阅读了一些关于我的问题的问题和答案,但我仍然不知道答案。

Can I use the userSub in AWS Cognito as primary key?

AWS Cognito: Difference between Cognito ID and sub, what should I use as primary key?

首先,我将尝试描述我的情况。

我想创建一个带有spring boot的应用程序作为使用oauth2的资源服务器。然后为了节省一些用户管理时间,我希望使用 AWS Cognito,因为它允许我以管理员身份创建用户。我可以设置它不会让其他人为自己注册,这对我来说至关重要,因为我的应用程序的访问权限受到限制;管理员将管理它。

现在我的问题是,我可以使用 AWS Cognito 的哪个字段作为在我的数据库中保存用户特定数据的主键?我读到usernamesub都不正确。 例如,username 可以更改,而sub 是全局唯一的,因此无法恢复。有没有办法创建一个自定义字段,AWS Cognito 将自动生成我可以使用的 UUID,如果我必须恢复用户池,我可以选择设置这个字段?

【问题讨论】:

    标签: amazon-web-services spring-boot oauth-2.0 cloud amazon-cognito


    【解决方案1】:

    您仍然可以使用用户名。如果它曾经更改,只需更新您的数据库以反映此更改。 您还可以在用户池中创建自定义属性。您可以使用它来存储自生成的 ID。至于自动生成这个,你可以有一个post confirmation lambda trigger,它将使用adminUpdateUserAttributes分配一个唯一的id。

    【讨论】:

    • 感谢您的回复,现在我选择了 keycloak,但我最终会使用 AWS Cognito,并且需要自动生成。有了这个功能,我可以使用这个自动生成的字段作为主键。
    猜你喜欢
    • 2020-04-13
    • 1970-01-01
    • 2018-03-20
    • 2018-11-01
    • 2022-07-26
    • 2021-06-03
    • 2022-12-13
    • 1970-01-01
    • 2020-08-28
    相关资源
    最近更新 更多