Я начинаю внедрять федеративную аутентификацию с помощью AWS Cognito, используя AWS C ++ SDK.
Я хочу аутентифицировать пользователя с помощью Cognito User Pool и Facebook, Twitter, Google.
Я понимаю, чтоЯ могу связать несколько имен входа под одним идентификатором пользователя (Cognito identityId), но это возможно только в том случае, если такие имена входа добавляются вручную после первого входа.
Например, я вижу сценарий:
- Пользователь регистрируется с помощью Cognito UserPool.
- Затем, оставаясь аутентифицированным, пользователь аутентифицируется с помощью Facebook.А токены Facebook могут добавляться в логины.
- При дальнейшем извлечении процессов вызова AWSCredentials - логин Facebook будет добавлен к идентификатору пользователя в Cognito Identity Pool.
- После этого пользователь может войти в систему, используя учетные данные UserPool и аутентификацию Facebook под тем же идентификатором пользователя.
Во-первых, я не уверен, что мой сценарий правильный, но это то, чтоЯ понял, прочитав много постов здесь и документы AWS.
И если сценарий правильный, то я застрял в другом вопросе: как обновить токены?
В AWS C ++ SDK по порядкудля обновления AWS Credential используется вызов CognitoIdentityClient.GetCredentialsForIdentity
, но он требует прохождения пользовательских логинов.
Мой более конкретный вопрос: мне нужно пропускать все логины?Требуется ли, чтобы все токены доступа в логинах не истекли?