patch
This commit is contained in:
		
							parent
							
								
									2c0e292ce0
								
							
						
					
					
						commit
						d3633a7b47
					
				@ -17,14 +17,11 @@ class CurrentUser:
 | 
				
			|||||||
    session_id: str
 | 
					    session_id: str
 | 
				
			||||||
    permissions: List[str]
 | 
					    permissions: List[str]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def _require_permissions_flag() -> bool:
 | 
					async def _fetch_current_user(
 | 
				
			||||||
    return False
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
async def get_current_user(
 | 
					 | 
				
			||||||
    request: Request,
 | 
					    request: Request,
 | 
				
			||||||
    credentials: HTTPAuthorizationCredentials = Depends(auth_scheme),
 | 
					    credentials: HTTPAuthorizationCredentials,
 | 
				
			||||||
    require_permissions: bool = Depends(_require_permissions_flag)
 | 
					    require_permissions: bool
 | 
				
			||||||
):
 | 
					) -> CurrentUser:
 | 
				
			||||||
    token = credentials.credentials
 | 
					    token = credentials.credentials
 | 
				
			||||||
    ip = request.client.host or "(unknown)"
 | 
					    ip = request.client.host or "(unknown)"
 | 
				
			||||||
    user_agent = request.headers.get("User-Agent", "(unknown)")
 | 
					    user_agent = request.headers.get("User-Agent", "(unknown)")
 | 
				
			||||||
@ -45,7 +42,6 @@ async def get_current_user(
 | 
				
			|||||||
        raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="Token service unavailable")
 | 
					        raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="Token service unavailable")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if response.status_code != 200:
 | 
					    if response.status_code != 200:
 | 
				
			||||||
        # raise HTTPException(status_code=response.status_code, detail=response.json().get("detail", "Invalid token"))
 | 
					 | 
				
			||||||
        raise HTTPException(
 | 
					        raise HTTPException(
 | 
				
			||||||
            status_code=response.status_code,
 | 
					            status_code=response.status_code,
 | 
				
			||||||
            detail=f"token_service: {response.text}"
 | 
					            detail=f"token_service: {response.text}"
 | 
				
			||||||
@ -61,6 +57,19 @@ async def get_current_user(
 | 
				
			|||||||
    )
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async def get_current_user(
 | 
				
			||||||
 | 
					    request: Request,
 | 
				
			||||||
 | 
					    credentials: HTTPAuthorizationCredentials = Depends(auth_scheme)
 | 
				
			||||||
 | 
					) -> CurrentUser:
 | 
				
			||||||
 | 
					    return await _fetch_current_user(request, credentials, require_permissions=False)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async def get_current_user_with_permissions(
 | 
				
			||||||
 | 
					    request: Request,
 | 
				
			||||||
 | 
					    credentials: HTTPAuthorizationCredentials = Depends(auth_scheme)
 | 
				
			||||||
 | 
					) -> CurrentUser:
 | 
				
			||||||
 | 
					    return await _fetch_current_user(request, credentials, require_permissions=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def validate_username(value: str,
 | 
					def validate_username(value: str,
 | 
				
			||||||
                      field_name: str = "login",
 | 
					                      field_name: str = "login",
 | 
				
			||||||
                      with_httpexception=False,
 | 
					                      with_httpexception=False,
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user