Oauth 2.0 - социальная аутентификация - PullRequest
0 голосов
/ 18 февраля 2020

Я реализую социальную аутентификацию в бэкэнде. У меня есть локальная стратегия, в которой я назначаю JWT пользователю и отправляю его. У меня вопрос, как я могу аутентифицироваться с помощью Google, например, и назначить токен, чтобы я мог иметь приложение на основе токенов. Например, у меня есть это. Здесь я использую куки для хранения пользовательской информации и сохранения ее для продолжения сеанса. Но я хочу сделать это с помощью токена. Как я могу отправить токен? Можно ли использовать информацию пользователя для создания JWT? Что было бы лучшей практикой. Проект предназначен для мобильного приложения. Мне было предложено отправить токен для локального хранения.

passport.use(new GoogleStrategy
    ({

        callbackURL: "/auth/google/redirect",
        clientID: keys.google.clientID,
        clientSecret: keys.google.clientSecret
    },

        (accessToken, refreshToken, profile, done) => {

            User.findOne({ googleId: profile.id }).then((currentUser) => {
                if (currentUser) {
                    done(null, currentUser)
                } else {
                    new User({
                        username: profile.displayName,
                        googleId: profile.id
                    }).save().then((newUser) => {
                        done(null, newUser)
                    })
                }
            })

        })
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...