FastAPI hutoa zana zilizojengwa ndani (OAuth2PasswordBearer, zana za usalama) za kutekeleza uthibitishaji wa utambulisho, kawaida ukitumia OAuth2 password flow na JWT tokens. Mfumo huchanganya utoaji wa token (kuingia) na dependency inayothibitisha token kwenye routes zilizolindwa.
Kuhashisha nywila na kutoa JWT wakati wa kuingia
passlib.context CryptContext
jose jwt
datetime datetime, timedelta
pwd = CryptContext(schemes=[])
():
user = get_user(form.username)
user pwd.verify(form.password, user.hashed_password):
HTTPException(, )
token = jwt.encode(
{: user.username, : datetime.utcnow() + timedelta(minutes=)},
SECRET_KEY, algorithm=,
)
{: token, : }
