Рубрики
Без рубрики

Создайте простой сервис API с Python Fastapi – Часть 2

В предыдущем посте я уже рассказал о том, как настроить и создать новую службу API учетной записи пользователя. I… Tagged с Fastapi, Apiservice, Python.

В предыдущем посте я уже рассказал о том, как настроить и создать новую службу API учетной записи пользователя.

В этом посте я покажу, как сделать API аутентификации с помощью FastAPI.

I. Хэш реальный пароль перед сохранением в базе данных:

Ранее мы делаем так:

Теперь мы будем хэмфировать пароль, используя библиотеку Bycrypt.

bcrypt is a password hashing function designed by Niels Provos and David Mazières, based on the Blowfish cipher, and presented at USENIX in 1999.[1] Besides incorporating a salt to protect against rainbow table attacks, bcrypt is an adaptive function: over time, the iteration count can be increased to make it slower, so it remains resistant to brute-force search attacks even with increasing computation power.

Чтобы установить библиотеку BCRYPT в Python, просто

pipenv install bcrypt

А теперь код для создания нового пользователя будет выглядеть как:

II. Проверьте пароль ввода для аутентификации API -сопоставления

Чтобы сделать это, мы используем bcrypt.checkpw из библиотеки Bcrypt.

Iii.create aempate obstice, если имя пользователя и пароль верны

1. Определите схемы токенов в схемах.py

2. Создайте токен доступа с помощью библиотеки JWT

Используйте библиотеку JWT в Python, установив ее:

pipenv install pyjwt

Затем определите метод, который создает токен доступа из hashed_password в базе данных

IV.Wrap вообще и определите API аутентификации из Main.py Оберните его вообще для создания API аутентификации

Приведенный ниже метод будет проверять имя пользователя и пароль, а затем вернет access_token в ответе, если имя пользователя и пароль верны.

Чтобы запустить сервер, просто нажмите кнопку запуска из IDE или по командной строке:

uvicorn main:app --reload

Пожалуйста, проверьте полный SourceCode из GitHub Анкет

Счастливого кодирования ~~~

Оригинал: “https://dev.to/cuongld2/build-simple-api-service-with-python-fastapi-part-2-88a”