联合身份和用户属性修改

问题描述:

在我的应用程序中,我希望用户通过Facebook(通过我创建的用户池)登录/注册自己。我已经完成了这个第一种方法,现在正在查看Facebook身份验证。基本上,我检索用户信息,如姓名,电子邮件,性别等,但我也希望他们填写丢失的信息,如DOB,位置或稍后,如果他们愿意,他们应该能够修改这些属性。我怎样才能做到这一点?我应该有DynamoDB表并使用这些属性填充它,并让它们稍后进行修改?谢谢你的建议。联合身份和用户属性修改

我会建议aws cognito帮助跟踪用户属性,因为您已经描述了https://aws.amazon.com/cognito/它有很多内置的属性,还允许您创建自定义属性。

除了David的回答,您还可以使用Cognito Sync将这些属性中的每一个作为记录存储在单个数据集中。既然你提到你有一个Facebook供应商链接,那么这些都可以跨设备访问,只有拥有的用户才能看到。

Dynamo也是一个完全可行的选项,您可以使用Cognito的IAM权限来确保用户只能查看/更新自己的行。

+0

我也想显示一个用户列表,让我们可以说某些年龄的特定位置等等。因为您提到的属性只有拥有的用户才可以看到,Cognito Sync可以吗? – Dodi

+0

跨用户的东西,你不能。你必须使用类似发电机的东西 –

我们增加了对用户池的Federation through Facebook, Google and LoginWithAmazon的支持。这将在用户使用联合身份登录时在用户池中创建用户。您还可以使用属性映射功能从Facebook捕获属性。