2017-09-04 80 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

相關問題