Аутентификация в NestJS

Sdílet
Vložit
  • čas přidán 23. 06. 2023
  • В этом видео мы рассмотрим, как настроить авторизацию на NestJS. Вы узнаете, как реализовать регистрацию с помощью логина и пароля, авторизацию пользователей по этим данным, а также авторизацию через Google и Яндекс. Также покажу как генерировать пару access и refresh токенов, как их хранить и работать с БД при помощи Prisma. Дополнительно разберем защиту роутов, создание своих декораторов, кешиирование данных и другое.
    Репозиторий доступен по ссылке t.me/webmogilevtsev/1818
    #nestjs #prisma #googleauth #yandexauth #jwt
    Google Console Developer console.cloud.google.com/project
    Yandex Console Developer oauth.yandex.ru/client/new/id/
    Присоединяйтесь к группе в телеграмме t.me/webmogilevtsev

Komentáře • 48

  • @polioann
    @polioann Před 7 měsíci +5

    00:00 - Начало
    01:38 - Добавление prisma, база данных
    08:54 - Работа с пользователем
    25:27 - Работа с аутентификацией

  • @AGM140580
    @AGM140580 Před 2 měsíci

    Огромное спасибо за урок!
    Смотрел и повторял недели две.
    Получил много полезного опыта.
    С нетерпением жду Ваших новых видеоуроков.

  • @kavm85
    @kavm85 Před 29 dny +1

    Очень познавательно. Спасибо.

  • @wrpffrdm8976
    @wrpffrdm8976 Před 10 měsíci +1

    Спасибо! Очень стоящий контент! Круто!

  • @andreisachuk5653
    @andreisachuk5653 Před rokem +5

    спасибо за обалденный контент! очень полезно)

  • @spr1ng586
    @spr1ng586 Před 8 měsíci +3

    На самом деле супер офигенный видос по Nest. Для меня, как для новичка, получился видос не просто по аутентификации, а по самому фреймворку. Очень много нового узнал

  • @uncleabe8147
    @uncleabe8147 Před rokem +4

    все видео переживал за букву "a")) надеюсь починили клаву :))

  • @coOonNect
    @coOonNect Před 5 měsíci +1

    Спасибо вам большое

  • @2009Spread
    @2009Spread Před rokem

    Агонь, не просто выделить столько времени, но это стоило этого

  • @sergeyshcherbina1648
    @sergeyshcherbina1648 Před rokem

    Спасибо! Круто!

  • @gigakvachakhia4777
    @gigakvachakhia4777 Před 11 měsíci +1

    thanks a lot. ur content is amazing

  • @mansurmakhmutov7823
    @mansurmakhmutov7823 Před 11 měsíci

    Отличная работа

  • @Mr.Bellamy
    @Mr.Bellamy Před 9 měsíci

    Посмотрел за 3 дня. Хорошее видео, спасибо! Единственное, видос был бы максимально полным, если бы еще добавлено было подтверждение почты и гуард который не пускает по опредленным путям, без подтверждения почты. Придется самому ковырять))))
    P.S. Авторизация через яндекс чет не завелась с ходу по аналогии с гуглом, там какой-то код прилетает, который надо менять на токен, а нест падает с ошибкой. Я не стал углубляться в доку, хep с ним. Паспорт яндекс в npm 3 года назад обновляли =\

  • @user-ml2yz6ck7v
    @user-ml2yz6ck7v Před 8 měsíci +2

    Отличный урок. Есть ли возможность сделать урок с Аутентификаций nest+graphql ?

  • @user-gk6xq8wk3w
    @user-gk6xq8wk3w Před 3 měsíci

    Поставил плюс за старания, качество видео и за ссылку на репозиторий, но немного критики. Во-первых, непонятна целевая аудитория ролика. Новички? Тогда почему автор почти ничего не объясняет, для чего он делает то и сё? Опытные разрабы? Так они уже всё это знают и смотреть вряд ли будут. Средние, типа меня? Много спорного на мой взгляд, что можно было бы сделать по-другому или проще, не усложнять. Во вторых, неплохо было бы разбить видео на таймкоды, чтобы была ясная последовательность действий.

  • @gigakvachakhia4777
    @gigakvachakhia4777 Před 6 měsíci

    gde novie Vidosi? :D sdelai kurs xotiabi, kupim

  • @neurabrain
    @neurabrain Před 7 měsíci

    а почему токены храним в postgres ? вроде правильнее их хранить в redis ?

  • @sergeyf4256
    @sergeyf4256 Před 7 měsíci

    команда \dt не сработала, только после прописывание всех характеристик этой командой psql -U root_auth -d db_auth - перешел именно к конкретной базе данны, а потом уже вводил \dt как в видео чтобы получилось увидеть List of relations. Ну возможно я что-то сделал не так как на видео т.к. версия pg: 15, dpage/pgadmin4:6

  • @webmogilevtsev3177
    @webmogilevtsev3177  Před rokem +4

    Ссылку на репозиторий прикреплю завтра вечером

    • @diatm1506
      @diatm1506 Před rokem +1

      Ещё бы на angulare клиентскую часть написать)

    • @2009Spread
      @2009Spread Před rokem

      @@diatm1506 да еще бы на первом

    • @diatm1506
      @diatm1506 Před rokem +1

      @@2009Spread рофл?)))

  • @GLUCKKKKKKKKKK
    @GLUCKKKKKKKKKK Před 12 dny

    В чем отличие от сессий если мы храним токены в бд?

  • @neurabrain
    @neurabrain Před 7 měsíci

    'prettier/prettier': [
    'error',
    {
    endOfLine: 'auto',
    },
    ], а что дает добавление этого кода? что с ним что без него я разницы не заметил

  • @MikhailTeslenko86
    @MikhailTeslenko86 Před 9 měsíci +1

    я только не понял когда должен вызываться ендпоинт refresh-tokens?

    • @Mr.Bellamy
      @Mr.Bellamy Před 9 měsíci +2

      это делается на фронте. Обычно через interceptors.
      Делается запрос обычный, например, добавить статью в блог с access токеном. Если возвращается 401 статус (access токен протух), то отправляется запрос на рефреш, чтобы обновить. Если все гуд, то запрос повторяется уже со свежим токеном.

  • @34535fff
    @34535fff Před 8 měsíci

    А для чего нам 2 докера? Нужен ли второй докер который внутри призмы, он туда случайно попал? Имею ввиду тот что в папке prisma

    • @user-gk6xq8wk3w
      @user-gk6xq8wk3w Před 3 měsíci +1

      Неа, здесь вообще докерфайл не нужен, потому что ведется только разработка (dev) и всё устанавливается через yarn. Нужен только docker-compose для удобного доступа к postgres и pgadmin. Докерфайл нужен если есть разные окуржения- одно для разработки, другое для тестирования, третье для продакшена. На фига? Чтобы не установить лишние библиотеки, для nodejs это очень болезненная тема. К примеру в продакшене уже не нужен jest и куча тайпскриптовых d.ts файлов. Сейча принято создавать один докер-файл и прописывать в нём мульти-этапные сборки. Видели наверное, в докер-файле бывает напихано: FROM node AS build потом ниже FROM node AS production и тд . Multi-staged build dockerfile по-научному

  • @AleksandrNeo
    @AleksandrNeo Před 9 měsíci

    Привет, я нуб в фулстеке, но как можно (схематично) организовать общение этого бека с фронтом? У меня есть монорепа и хочу написать фронт для аутентификации и как раз такой вариант (пароли, провайдеры по типу гугл яндекс) мне очень подходит. Буду рад советам/комментариям

    • @Mr.Bellamy
      @Mr.Bellamy Před 9 měsíci +3

      дык тут все апи есть, на фронте просто вызываешь эти методы, вместо постмана и вжуууууууух ты зареган))

  • @fluffymuzzy
    @fluffymuzzy Před 10 měsíci

    Спасибо за топ контент!
    Есть один вопрос по методу delete. Когда тестирую в постмане, он все равно удаляет и получает юзера даже если роль не ADMIN. Токен в постман корректный, но я не получаю ошибку 403, в чем может быть причина?

    • @kavm85
      @kavm85 Před 29 dny

      Сам себя может удалять.

  • @user-qv4sm1eb7i
    @user-qv4sm1eb7i Před 2 měsíci

    1:03:38

  • @CorleoneMikele
    @CorleoneMikele Před 9 měsíci

    Такое ощущение что при печати ты прыгаешь на старой пружинной кровати, так клавиатура пружинами брянчит, без обид ). А контент интересный, тебе бы компуктер помощнее чтоб не лагало и нормальную клавиатуру🤘Сорян за некропостинг.

  • @osad4enko
    @osad4enko Před 6 měsíci

    Сервис токена занимает большую часть модуля AUTH, насколько ему уместно быть в AUTH, а не в своем собственном модуле TOKEN и инжектиться в другие модули ?

  • @user-bo5sg7lf4c
    @user-bo5sg7lf4c Před 3 měsíci

    Ты хорош, но буква а🥶🥶🥶

  • @VolframLEONE
    @VolframLEONE Před 8 měsíci

    Что то я не понял как на фронте происходит логин, и получение данных юзера для фронта

  • @robles2145
    @robles2145 Před 3 měsíci

    Для крупного проекта хранить рефреш токен в куках - мертвое дело. С репликацией вся эта схема работать не будет. Да и смысл вообще, если уж скрипт внедрился на фронт, то он и с кукой этой запрос кинет без проблем не обращаясь к ней

    • @axhmed4257
      @axhmed4257 Před 8 dny

      А где лучше хранить рефреш токен и access token тоже

  • @helplrewerse2925
    @helplrewerse2925 Před 11 měsíci +4

    2:48:33 nurses 2 xxx вот это ценитель. Как 1 часть зашла?

  • @user-in4cb3gp3u
    @user-in4cb3gp3u Před 10 měsíci

    Шумная клавиатура