openreplay/ee/api/auth/router_security.py
Taha Yassine Kraiem 28b6c58a49 feat(chalice): router level permissions for sessions
feat(chalice): router level permissions for errors
2022-09-21 17:31:39 +01:00

15 lines
No EOL
493 B
Python

from fastapi import HTTPException, Depends
from fastapi.security import SecurityScopes
import schemas_ee
from or_dependencies import OR_context
def check(security_scopes: SecurityScopes, context: schemas_ee.CurrentContext = Depends(OR_context)):
for scope in security_scopes.scopes:
if scope not in context.permissions:
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
detail="Not enough permissions",
)