Facebook "войти" с Cognito User Pool
В моем приложении для iOS я настроил пулы пользователей cognito для аутентификации с использованием имени пользователя и пароля с помощью AWS SDK, и он работает, как и ожидалось. Теперь я добавляю поддержку Facebook как провайдера идентификации, используя описанный здесь поток OAuth. Этот поток предоставляет URI перенаправления три токена (доступ, идентификатор и обновление) после успешного входа в Facebook.
Благодаря аутентификации по имени пользователя и паролю AWS SDK отслеживает сеанс, используя getSession()
(как показано здесь):
guard let currentUser = AWSCognitoIdentityUserPool.myUserPool.currentUser() else {
return completion(nil, .noSession)
}
currentUser.getSession().continueWith { task -> Any? in
if let awsSession = task.result, let cognitoSession = CognitoSession(awsSession: awsSession) {
return completion(cognitoSession, nil)
}
return completion(nil, .unknown)
}
Это дает дополнительное преимущество обновления маркеров доступа и идентификатора, когда они истекли. К сожалению, я не могу понять, как поток OAuth может обеспечить такую же функциональность.
Есть ли способ выполнить вход в пул удостоверений с помощью токенов, которые возвращаются из потока OAuth?