AWS 科尼托。是否可以将用户导入用户池并将他们与他们现有的开发人员身份验证相关联?

AWS Cognito. Is possible to import users to a User Pool and relate them with their existing developer authenticated identities?

我们已经使用我们的自定义用户身份验证服务实现了一个开发人员身份提供者,并且我们有一个身份池连接到它并保存了许多身份。现在,我们正在评估将我们的用户 table 移动到连接到同一身份池的用户池并使用 mobile-hub 库。

问题是:导入后,Cognito 能否检测到具有特定用户名的用户是否已存在于身份池中并且不再创建它(使用另一个身份)?自助注册已激活。

更新说明: 我们的身份池有近 1000 个现有身份。所有这些都是在用户池功能存在之前创建的。它们是使用 "Developer Authenticated Identities Authflow" (check link) 创建的,外部 "Developer Provider" 是一个简单的用户 table。身份池中的每个 identityId 都与我们外部用户 table 中的现有身份(记录)相关联。

现在我们想在我们的 iOS 应用程序中使用 AWS Mobile-hub 库,并使用与现有身份池连接的用户池。我们想开始向我们的用户池添加新用户,但对于现有用户,他们已经在身份池中创建了一个身份。遇到这种情况怎么办?

似乎是,在首次登录时,Cognito 没有一种机制来检测用户是否已经拥有由另一个身份验证流程(Facebook、开发人员提供商)创建的 IdentityId。

您可以做几件事中的一件,因为正如您所说,Cognito 不会完全为您处理。

如果您都在用户池中,则可以使用导入用户功能来转移您的用户。

或者,在登录时,您可以检查您的用户 table 中是否存在该用户名。如果是这样,您可以通过它登录它们,或者您可以将它们转移到用户池中并在那里进行延迟加载。