wse*_*ubr 5 javascript amazon-cognito react-native aws-amplify
我正在开发一个使用 aws-amplify 与 amazon cognito 交互的本机应用程序。在我的用例中,我需要确保自定义属性的值在所有帐户中都是唯一的。aws-amplify 似乎没有允许我通过自定义属性搜索所有帐户的 API。我怎样才能做到这一点?
不幸的是,您根本无法单独使用 Cognito:
自定义属性不可搜索。这是因为只有索引属性是可搜索的,而自定义属性不能被索引。
您唯一的选择是保留您自己的数据库,将用户与属性值相关联,并在那里强制执行唯一性。例如在 DynamoDB 中,您将相应地记录用户sub(唯一 Cognito 身份)和自定义属性的值作为排序/分区键,确保普通 Cognito 客户端只能读取自定义属性,并提供您自己的 API(lambda + api-网关)尝试添加/更新表并使用 cognito Admin API 更新用户的“只读”自定义属性。
小智 5
没错,您无法搜索自定义属性。为什么不能使用 AWS Cognito 的标准属性之一作为自定义属性进行填充。只是一个想法。然后您也可以搜索以检查它的唯一性。
标准属性:
用户名(区分大小写)
电子邮件
电话号码
姓名
给定的名称
姓
首选用户名
cognito:user_status(在控制台中称为状态)(不区分大小写)
状态(在控制台中称为已启用)(区分大小写)
子
| 归档时间: |
|
| 查看次数: |
4822 次 |
| 最近记录: |