FastAPI - Authentication and Security
You want to secure a FastAPI endpoint so only users with a valid OAuth2 password flow token can access it. Which approach correctly uses OAuth2PasswordBearer and token verification?
from fastapi import FastAPI, Depends, HTTPException
from fastapi.security import OAuth2PasswordBearer
app = FastAPI()
oauth2_scheme = OAuth2PasswordBearer(tokenUrl='token')
def verify_token(token: str):
if token != 'validtoken':
raise HTTPException(status_code=401, detail='Invalid token')
@app.get('/secure-data')
async def secure_data(token: str = Depends(oauth2_scheme)):
verify_token(token)
return {'data': 'secret info'}