2017-05-25 123 views
0

因此,我們將使用AWS Cognito在我們的應用程序中對用戶進行身份驗證。但是,這帶來了如何與DyanmoDB和/或MongoDB交互認知用戶數據的問題?如何使用DynamoDb存儲在Cognito中的用戶數據

在我們的具體情況中,我想創建DynamoDB中25+公司記錄的列表,然後當用戶註冊時,他們將不得不選擇要在用戶配置文件中關聯的其中一個公司。但是,我沒有看到將Identity Pool自定義屬性與DynamoDB錶鏈接的方法。

此外,每當用戶提交提交時,我希望用戶與dynamoDB或mongoDB中的提交相關聯。

這兩個主題的最佳方法是什麼?任何幫助將不勝感激!

回答

0

實現此目的的一種方法是使用Cognito中的自定義屬性。所以:

  1. 指定自定義屬性:company(獲取DynamoDB記錄,當你與每個用戶需要它)
  2. 然後在DyanmoDB你可以用一個字段爲用戶的電子郵件地址DynamoDB存儲提交記錄(沒有真正推薦,出於安全原因)或散列的用戶的電子郵件地址。 [或者如Jeff在評論中提到的那樣,使用由Cognito生成的sub,因爲它是不可分配和獨特的! ]

通過這樣做,您可以讓用戶與DynamoDB表中的公司和DynamoDB表中的提交相關聯。

+0

Cognito開發這裏,這個答案是非常合理的。只有一個建議的關鍵替代方案:用戶子沒有個人信息,並且是全球唯一的。 –

+0

哦,這是一個好點!使用由Cognito創建的子將是一個更好的,不可分配的密鑰。謝謝@JeffBailey! – cmeadows

相關問題