私はFacebook認証情報を使用してAWSにログインしようとしています。 Amazon CognitoのソーシャルアイデンティティプロバイダとしてFacebookを使用してフェデレーションIDを設定しましたが、何らかの理由で認証されません。 AmazonのDocsは最新ではないので、私は何をすべきか分からない。以下はiSight Swift AWSコグニートとFacebook認証
は、iOSアプリからいくつかのSWIFTコードです:ここでは
let token = FBSDKAccessToken.currentAccessToken().tokenString
let provider = MyProvider(tokens: [AWSIdentityProviderFacebook: token])
let credentialsProvider = AWSCognitoCredentialsProvider(regionType: region, identityPoolId: poolId, identityProviderManager: provider)
let configuration = AWSServiceConfiguration(region: region, credentialsProvider:credentialsProvider)
AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration
let id = credentialsProvider.getIdentityId()
はMyProviderクラスです:
import Foundation
import AWSCognitoIdentityProvider
class MyProvider:NSObject, AWSIdentityProviderManager{
var tokens : [NSString : NSString]?
init(tokens: [NSString : NSString])
{
self.tokens = tokens
}
@objc func logins() -> AWSTask {
return AWSTask(result: tokens)
}
}
私はこれを渡すときに私はFacebookとログインからトークンを取得することができていますが、 Cognitoへのトークン "NotAuthorizedException"のようなエラーが表示される "トークンはこのIDプールのサポートされているプロバイダからではありません。" AWCognitoCredentialsProviderに渡すプールIDとリージョンはAmazon Cognitoのものと一致し、MyProviderで定義したメソッドが呼び出されます。もし誰かがそれを働かせたら、それが働いていることを分かち合ってください。私は助言と助けを感謝します!
AWSCognitoLoginProviderKey.Facebook.rawValueは非推奨です – plot
こんにちは、AWS経由でFacebookのログインを実装しましたか?私はこれを実装するために苦労して、私はこれを行うのを手伝ってください。 – vijay
Cognitoを使用するために必要なコードとセットアップの量は驚くほどです。私はFirebaseがよりスマートで迅速に統合することが容易であることを発見しました。 – Annjawn