get_current_user() — fastapi Function Reference
Architecture documentation for the get_current_user() function in tutorial005_py39.py from the fastapi codebase.
Entity Profile
Dependency Diagram
graph TD fe006d19_3deb_24d7_dd0a_51dc00b3b2e7["get_current_user()"] b46332e9_4acb_e3b7_ca46_099c78466b55["tutorial005_py39.py"] fe006d19_3deb_24d7_dd0a_51dc00b3b2e7 -->|defined in| b46332e9_4acb_e3b7_ca46_099c78466b55 c28b8e5b_af2c_fa11_1fe0_b3b068154551["get_user()"] fe006d19_3deb_24d7_dd0a_51dc00b3b2e7 -->|calls| c28b8e5b_af2c_fa11_1fe0_b3b068154551 style fe006d19_3deb_24d7_dd0a_51dc00b3b2e7 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
docs_src/security/tutorial005_py39.py lines 105–137
async def get_current_user(
security_scopes: SecurityScopes, token: str = Depends(oauth2_scheme)
):
if security_scopes.scopes:
authenticate_value = f'Bearer scope="{security_scopes.scope_str}"'
else:
authenticate_value = "Bearer"
credentials_exception = HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
detail="Could not validate credentials",
headers={"WWW-Authenticate": authenticate_value},
)
try:
payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM])
username: str = payload.get("sub")
if username is None:
raise credentials_exception
scope: str = payload.get("scope", "")
token_scopes = scope.split(" ")
token_data = TokenData(scopes=token_scopes, username=username)
except (InvalidTokenError, ValidationError):
raise credentials_exception
user = get_user(fake_users_db, username=token_data.username)
if user is None:
raise credentials_exception
for scope in security_scopes.scopes:
if scope not in token_data.scopes:
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
detail="Not enough permissions",
headers={"WWW-Authenticate": authenticate_value},
)
return user
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does get_current_user() do?
get_current_user() is a function in the fastapi codebase, defined in docs_src/security/tutorial005_py39.py.
Where is get_current_user() defined?
get_current_user() is defined in docs_src/security/tutorial005_py39.py at line 105.
What does get_current_user() call?
get_current_user() calls 1 function(s): get_user.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free