Что я храню для авторизации пользователя от Google Auth? - PullRequest
0 голосов
/ 26 февраля 2020

Я создаю веб-сайт, используя Angular 8 для внешнего интерфейса и Node для внутреннего интерфейса. Пользователи будут входить на веб-сайт и создавать элементы, которые принадлежат им и должны быть доступны только им. Эти элементы будут храниться в базе данных, и их необходимо каким-то образом соотносить с пользователями. Поэтому в базе данных также будет содержаться объект User.

Я использовал angularx-social-login Пакет Node на внешнем интерфейсе для авторизации в Google и успешно "могу войти" "пользователи используют следующий код:

this.authService.signIn(GoogleLoginProvider.PROVIDER_ID);

Затем следующий код возвращает объект, представляющий пользователя:

this.authService.authState.subscribe((user) => {
  this.user = Promise.resolve(user);
  this.isLoggedIn = Promise.resolve((user != null));
});

Однако я немного растерялся :

  1. Я настроил внедрение службы AuthService в своем классе App.Module.ts. Это включает в себя мой идентификатор клиента, предоставленный порталом Google . Это безопасно? Есть ли лучшее место для хранения этого?

  2. Пользователь, который возвращает AuthService, содержит AuthToken, authorizationCode, id, et c ... Что я должен делать с этим? Что безопасно отправить на мой бэкэнд? Что безопасно для меня хранить в моей базе данных? По сути, что я должен отправлять на свой серверный узел и сохранять в своей базе данных для создания пользовательских объектов?

  3. Я читал в нескольких местах, что должна быть какая-то бэкэнд-проверка из всего, что я посылаю из внешнего интерфейса. Как это выглядит?

  4. Есть ли лучший способ сделать это?

...