FastAPI అందించిన బిల్ట్-ఇన్ సాధనాలు (OAuth2PasswordBearer, సెక్యూరిటీ యూటిలిటీలు) ప్రామాణీకరణను అమలు చేయడానికి, సాధారణంగా OAuth2 పాస్వర్డ్ ఫ్లో JWT టోకెన్ల కోసం ఉపయోగిస్తారు. ఈ నమూనా టోకెన్ జారీ చేయడు (లాగిన్)ని సంরక్షిత రూట్ల్లో టోకెన్ను ధృవీకరించే ఆధారపడటంతో సంయోగం చేస్తుంది.
లాగిన్లో పాస్వర్డ్లను హ్యాష్ చేయడం మరియు JWT జారీ చేయడం
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, : }
