簡體   English   中英

AWS-通過用戶池進行的Cognito登錄和Cognito身份驗證[iOS]

[英]AWS - Cognito Login by User Pool, and Cognito Authentication[iOS]

因此,我已經使用Cognito中的“用戶池”成功驗證了用戶身份。 據我了解,現在在我們使用任何AWS服務(dynamodb,S3等)之前,我們再次需要從AWS Cognito Credential Provider獲取cognitoID

  1. Cognito用戶池(驗證)用戶登錄
  2. 通過配置AWSCognitoCredentialsProvider獲取AWSCognitoCredentialsProvider
  3. 使AWS適應我們想要與之交互的任何服務。

從用戶PoolID委托成功登錄后,我執行此操作

credentialProvider = AWSCognitoCredentialsProvider(regionType: 
AWS_Region_type, identityPoolId: AWS_IdentityPool_ID, 
identityProviderManager: devCredentialProvider)
let configuration = AWSServiceConfiguration(region: AWS_Region_type, credentialsProvider: credentialProvider)
 AWSServiceManager.default().defaultServiceConfiguration = configuration 

但是,每當我知道用戶未通過身份驗證時,都可以。 現在,如果用戶未通過身份驗證,則無法使用Cognito用戶池登錄。 我究竟做錯了什么?

請避免提供現有aws文檔的資源,因為它們極易引起誤解。

另外,來自Cocoapods的AWS軟件包與文檔中的AWS軟件包不匹配,並且不存儲在鑰匙串(ID令牌)中,因此我的登錄UI每次都打開。 我們可以通過兩種方式通過Cocoapods / Carthage或從AWS Console中的Mobile HUB獲得AWS開發工具包。 現在,關於我要使用哪一個,我非常困惑? 我還使用了Mobile HUB的示例項目,但是如果我的后端(AWS控制台)已經設置好並且只需要實現前端怎么辦?

我的后端也是在USEast2上設置的,但是在創建Mobile HUB項目時, 沒有 USEast2。

如果有人能弄清我到底在做什么錯,那將是非常不錯的,因為我已經白白浪費了很多時間。

不推薦使用MobileHubHelper框架,並且AWS iOS SDK具有Auth SDK來管理與AWS的身份驗證。 建議您使用它。 您可以在這里找到說明: https : //docs.aws.amazon.com/aws-mobile/latest/developerguide/add-aws-mobile-user-sign-in.html

謝謝,羅漢

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM