相关疑难解决方法(0)

AWS:如何根据Cognito Pool正确验证用户身份并将其用于Cognito Federated Identity?

我正在开发一个将使用两个身份验证提供程序的应用程序:

  • Facebook的
  • Cognito用户池

对于前者,我没有任何问题,一切都按预期工作.但是,在使用Cognito用户池设置身份验证时,我正在接着一个墙.我使用的是AWS SDK 2.4.9,XCode 8和Swift 3.

我知道已经有很多问题已经被提出,并且有很多"指南".但是,很多人都会回答/制作过时的文档和SDK.甚至官方AWS文档也已过时.

我要经历的身份验证步骤如下:

1.配置初始认知池

///  Set the default service configuration
let serviceConfiguration = AWSServiceConfiguration(region: AWSRegionType.usEast1, credentialsProvider: nil)
AWSServiceManager.default().defaultServiceConfiguration = serviceConfiguration

/// Create a pool configuration and register it for a specific key to use later
let poolConfiguration = AWSCognitoIdentityUserPoolConfiguration(clientId: appClientID, clientSecret: appClientSecret, poolId: poolID)  
AWSCognitoIdentityUserPool.registerCognitoIdentityUserPool(with: poolConfiguration, forKey: poolKey)

/// Create a pool for a specific predefined key
pool = AWSCognitoIdentityUserPool(forKey: poolKey)
Run Code Online (Sandbox Code Playgroud)

2.针对Cognito用户池验证用户

  user.getSession(username, password: password, validationData: nil).continue({ (task) -> AnyObject? in

        if let …
Run Code Online (Sandbox Code Playgroud)

federated-identity amazon-web-services ios swift

8
推荐指数
1
解决办法
2661
查看次数