Proporciona dependencias de FastAPI para la autenticación mediante Api Key.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 18.0Te permite restringir qué claves API pueden llamar a cada endpoint de FastAPI asignando un grupo de claves API al endpoint.
Este módulo añade un campo de grupo de claves API a los registros de endpoint de FastAPI. En el formulario del endpoint, en el grupo de recursos, puedes elegir un auth.api.key.group.
- Si el campo se deja vacío, todas las claves API pueden acceder a ese endpoint.
- Si se establece un grupo, solo se aceptan las claves API que pertenecen a ese grupo; las demás claves reciben una respuesta "Unauthorized".
El módulo también proporciona la lógica de autenticación utilizada cuando se llama a un endpoint: lee la clave API de la cabecera HTTP (por defecto HTTP-API-KEY, configurable mediante una variable de entorno), busca la clave y la comprueba contra el grupo del endpoint. Las claves ausentes o no válidas devuelven una respuesta 401 Unauthorized con una cabecera WWW-Authenticate.
Modifica el modelo fastapi.endpoint y el modelo auth.api.key, y depende de los módulos fastapi y auth_api_key_group. No se añaden menús ni informes nuevos; el único cambio visible es el campo adicional en el formulario del endpoint de FastAPI.
Depende de
Modelos y campos (1)
- fastapi.endpoint · amplía un modelo existenteauth_api_key_group_id
Texto generado por IA (DeepSeek) al leer el código de la versión 18.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 2 confirmadas, 7 sin información de 9 versiones.
Fuentes · Odoo 18.0
Confirmado el 2026-11-03 en la rama 18.0 de OCA/rest-framework.
terminal Instalación y uso
Documentación de OCA · Odoo 18.0Obtener un entorno de odoo
Si necesitas obtener un entorno de odoo basado en la api key proporcionada, puedes usar authenticated_env_by_auth_api_key.
@router.get("/example_with_authenticated_env")
def example_with_authenticated_env(
env: Annotated[Environment, Depends(authenticated_env_by_auth_api_key)],
) -> None:
# env.user is the user attached to the provided key
passObtener el partner autenticado
Si quieres obtener el partner relacionado con la api key proporcionada, puedes usar authenticated_partner_by_api_key
@router.get("/example_with_authenticated_partner")
def example_with_authenticated_partner(
partner: Annotated[Partner, Depends(authenticated_partner_by_api_key)],
) -> None:
# partner is the partner related to the provided key key.user_id.partner_id
passConfiguración
Para que esto funcione, la api key debe estar definida en el Endpoint. Se ha añadido un nuevo campo auth_api_key_group_id al modelo Endpoint.
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación, Configuración.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.