Ho Lee Fuk

Сенсей
🛡 МОДЕРАТОР 🛡
Регистрация
22 Февраль 2018
Сообщения
11.997
Автор: udemy

Название: JWT Аутентификация с Elixir и Phoenix (2022)

1657226457685-png.98273


Описание:

JWT Authentication with Elixir & Phoenix

udemy

Внедрите аутентификацию на основе JWT в Elixir, язык, который так или иначе поддерживает (ErLang) Whatsapp, Discord, Pinterest и т. д. Мы будем использовать Phoenix Framework, фантастический фреймворк MVC для разработки бэкендов и проектов с полным стеком в Elixir. Считайте, что Phoenix больше похож на Express от Node.js, но, круче. Elixir в целом круче, чем любой другой язык, на котором я пишу код, но тем не менее, всего по немного.

Архитектура

1. Пользователи

Зарегистрировать пользователя

- Примите данные пользователя, такие как «электронная почта», «пароль», «имя пользователя» и т. д., и сохраните их в базе данных (PostgreSQL).

2. Хэширование пароля

- Хранение необратимого одностороннего хешированного пароля в базе данных, вместо хранения просто текста, что было бы катастрофой.

3. Авторизация

- Sign in на основе «логина» и «пароля». Подтвердите пароль с помощью хэша пароля, хранящегося в базе данных, и, если все совпадает, выдайте токен JWT для дальнейшего взаимодействия с API (защищенные маршруты).

4. Получение авторизованного пользователя

- Верните аутентифицированного пользователя по токену, указанному в заголовке авторизации.

5. Выход

- Аннулирование токена JWT путем его сохранения в соответствии с «user_id» в базе данных. Так что после выхода из системы с определенным токеном этот токен нельзя будет снова использовать для доступа к приватным маршрутам. Мы сделали это, поскольку токены JWT нельзя уничтожить, срок их действия может истечь только тогда, когда придет время. Так что же происходит, когда кто-то выходит из системы до истечения срока действия его токена? Кислород для размышлений.

2. Защищенные маршруты

Реализуйте частные маршруты для ведения списка контроля доступа => к чему можно получить доступ, а к чему нет. Например, не прошедший проверку подлинности пользователь (гость) не должен иметь доступа к следующему API.

- Выход
- Ping (пример запроса ping-pong Get для демонстрации механизма частного маршрута).
- И тому подобное...

3. Postman

- Попутно тестируйте REST API с Postman, разрабатывая каждый маршрут/API.

4. Многое другое

- Мы узнаем гораздо больше, чем написано, об Elixir, Phoenix, PostgreSQL и создании REST API в целом.

Материал на английском языке

Подробнее:
Для просмотра содержимого вам необходимо авторизоваться.

Скачать:
Скрытое содержимое могут видеть только члены группы Премиум.


Скрытый контент для пользователей All-dar.
 

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

У вас должна быть учетная запись, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизоваться

У вас уже есть аккаунт? Войдите здесь.

Сверху