2017-09-04 85 views
1

我已经跌跌撞撞周围试图了解Cognito和身份管理在移动应用中的几个小时。我对手机应用程序开发比较陌生。我以前制作过移动应用程序,但从未使用过后端应用程序。所以现在我正在玩AWS,打算试试这个。了解Cognito身份

我要确保使用我的应用程序可以为每个用户唯一标识,以便我可以存储他们提交给与之相关的服务器内容。但我也希望其他用户能够看到他们提交的内容。我还没有确定数据存储机制(亚马逊似乎提供了一些),但无论它将是无限期的免费服务,因为我不打算在这个应用上花费(或赚取)任何钱。什么是困惑我的

部分是需要建立与任何服务,我想与联合身份使用应用ID。我开始怀疑有多种身份,我感到困惑。应用程序是否拥有独立于用户身份的自己的身份?我没想到必须创建Google和Amazon App ID才能让用户使用他们的Google或Amazon帐户登录我的应用。我怀疑我对API的理解错了,而且我很难找到适用于Xamarin的示例代码。

我有这么多的代码(唯一标识符x'd出):

CognitoAWSCredentials credentials = new CognitoAWSCredentials(
    "us-east-2:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", // Identity pool ID 
    RegionEndpoint.USEast2 // Region 
); 

这似乎没有至少抛出异常运行(在调试器),但我不清楚是什么给了我。我怀疑这个凭证对象是否可以在用户重启设备后唯一标识用户,并在第二天再次启动该应用。为此我怀疑我需要更多东西,而我不清楚是什么。为用户获取唯一标识符的下一个最简单的步骤是什么?我可以将这些标识符与其内容一起存储以将其与其关联起来?

回答

0

您设置在具有用户使用第三方的身份还是要提供用户自己的身份?对于联合身份(第三方),您需要提供在Cognito中创建的身份池ID以标识联合身份提供者。在Cognito中为自己的身份创建具有ID的用户池。

如果要提供用户登录和注册了要使用Cognito的身份,而不是联合身份。下面的链接有这方面的一些很好的参考 -

https://aws.amazon.com/cognito/dev-resources/

+0

我希望能允许用户登录他们的谷歌或其他帐户,以便他们没有记住密码又毫无意义的应用。但我很惊讶,这需要我创建一个Google App来获得一个App ID,以支持接受与我的亚马逊App相关的Google ID。 – BlueMonkMN

+0

我已经给你链接的页面,但卡住了,当我大约从Xamarin实现联合身份,因为它说,部分“本身并不支持Xamarin平台上整合谷歌,”我不明朗的所有必要的步骤使其工作。 @Cheesebaron删除了我添加的Xamarin标签,但这是Xamarin特有的一个问题。然后,我还试图继续实施Amazon联合登录,但也因此无法找到任何“AmazonAuthorizationManager”实现 – BlueMonkMN

相关问题