Как аутентифицировать пользователей, вошедших в Google, с помощью Cognito в React Native без перенаправления браузераAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Как аутентифицировать пользователей, вошедших в Google, с помощью Cognito в React Native без перенаправления браузера

Сообщение Anonymous »

Я создаю приложение React Native и использую AWS Cognito для аутентификации пользователей. Я хочу предоставить пользователям возможность входить в систему с помощью Google, но у меня возникли проблемы с плавной интеграцией этой функции с Cognito.
Я пробовал:
Используя @react-native-google-signin /google-signin, чтобы получить токен Google ID:

Код: Выделить всё

await GoogleSignin.hasPlayServices();
const userInfo = await GoogleSignin.signIn();
const idToken = userInfo.idToken;
Однако я не уверен, как передать этот idToken в Cognito для правильной аутентификации пользователя.
Использование метода SignInWithRedirect от Cognito:

Код: Выделить всё

const user = await signInWithRedirect({ provider: 'Google' });
Это работает, но открывает браузер для перенаправления, что не идеально подходит для работы с собственными приложениями.
Проблемы:
  • Неподтвержденные электронные письма: при входе в Google Cognito помечает
    электронный адрес как неподтвержденный, даже если Google предоставляет подтвержденный адрес электронной почты.
  • Дубликаты записей: если пользователь ранее зарегистрировался по электронной почте. (например,
    [email protected]) и позже использует вход в Google с тем же адресом электронной почты,
    Cognito создает дубликаты учетных записей вместо того, чтобы связывать их.
Вопросы:
  • Как аутентифицировать пользователя Google в Cognito с помощью idToken
    , полученного от @react-native-google-signin/google-signin?
  • Как убедиться, что адрес электронной почты помечен как подтвержденный в Cognito после
    входа в Google?
  • Как запретить Cognito создавать дубликаты учетных записей для
    одного и того же адреса электронной почты, когда пользователи входят в систему Google после регистрации
    с использованием адреса электронной почты и пароля?
Любые рекомендации или примеры реализации это в приложении React Native было бы очень признательно!
Я использую React Native с @react-native-google-signin/google-signin.
Cognito настроен для аутентификации по электронной почте/паролю, а Google в качестве поставщик удостоверений

Подробнее здесь: https://stackoverflow.com/questions/792 ... without-br
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»