Как внедрить current_user с параметрами из AWS Cognito?
Недавно я решил перенести свою пользовательскую базу и аутентификацию на AWS Cognito с устройства. Ответом за это является то, что моя команда разрабатывает мобильные приложения, а rails - это бэкэнд API. Я создал собственную стратегию ( AWS Cognito) и настроил на устройстве использование своей собственной стратегии. Моя аутентификация работает должным образом, и я получаю пользовательские атрибуты из AWS Cognito. Но я не знаю, как заполнить мои атрибуты в объект current_user устройства. Для простоты и поддержания существующих отношений между моими сущностями я по-прежнему поддерживаю таблицу локальных пользователей только с минимальной информацией, такой как имя пользователя, роль и, конечно, первичный ключ.
Кто-нибудь может мне помочь, как заполнить current_user атрибутами cognito?
Ниже приведен мой псевдокод для пользовательской стратегии надзирателя:
module Devise
module Strategies
class CognitoAuthenticatable < Authenticatable
def authenticate!
client = get_aws_cognito
if resp = client.initiate_auth(username,pwd)
user_attrs_from_aws_cognito = resp.get_user(resp.access_token)
### How to populate user_attrs_from_aws_cognito to current user
success!
else
fail!("In valid login")
end
end
end
end
end