auth
app.common.middlewares.auth
Middleware (función) de fastapi para validar las cabeceras Content-Type y Authorization.
Adicionalmente valida la estructura del BEARER_TOKEN y obtiene de la Base de Datos (middleware de sesión), la información de la sesión, el rol y la lista de permisos, para pasarlos mediante DI a request.state.
Para más información, te recomendamos leer la documentación del Proyecto.
app.common.middlewares.sessions- https://fastapi.tiangolo.com/tutorial/middleware/
- https://fastapi.tiangolo.com/advanced/middleware/
- https://www.starlette.io/requests/#other-state
validate_bearer_token(apikey)
Valida la estructura del BEARER_TOKEN.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
apikey | str | el Token enviado por las cabeceras | required |
Returns:
| Type | Description |
|---|---|
tuple[int, str] | una tupla con el codigo de respuesta y el token ó un mensaje de error |
Examples:
validate_auth_session(request) async
Una función utilizada como DI, para validar las cabeceras Content-Type, Authorization y Accept-Encoding.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request | Request | una instancia de | required |
Notes
este middleware utiliza internamente a:
- la función
validate_bearer_token. - a la función asíncrona
default_validate_session, para más información revisa el móduloapp.common.middlewares.sessions.
Raises:
| Type | Description |
|---|---|
HTTPException | una excepción HTTP con un codigo de estado |
Examples:
validate_auth_bearer_token(request) async
Valida la cabecera Authorization y su estructura.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request | Request | una instancia de | required |
Notes
este middleware utiliza internamente a:
- la función
validate_bearer_token.
Raises:
| Type | Description |
|---|---|
HTTPException | una excepción HTTP con un codigo de estado |
Returns:
| Type | Description |
|---|---|
str | El Bearer Token |
Examples:
validate_default_headers(request) async
Valida las cabeceras content-type y accept-encoding.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request | Request | una instancia de | required |
Notes
este middleware solo valida la estructura.
Raises:
| Type | Description |
|---|---|
HTTPException | una excepción HTTP con un codigo de estado |
Examples: