跳转到主要内容

为FastAPI提供JWT承载令牌认证。

项目描述

Beta License: LGPL-3 OCA/rest-framework Translate me on Weblate Try me on Runboat

此模块提供了FastAPI Depends,以允许使用auth_jwt进行认证。

目录表

用法

以下FastAPI依赖项由以下提供并可从odoo.addons.fastapi_auth_jwt.dependencies导入

def auth_jwt_authenticated_payload() -> Payload

返回已认证的JWT有效负载。如果不存在或无效,则引发401(未授权)。

def auth_jwt_optionally_authenticated_payload() -> Payload | None

返回已认证的JWT有效负载,或者如果“Authorization”标题和cookie不存在,则返回None。如果存在且无效,则引发401(未授权)。

def auth_jwt_authenticated_partner() -> Partner

根据在< span class="docutils literal">auth_jwt验证器上定义的合作伙伴策略,获取与提供的JWT令牌对应的已认证合作伙伴。如果由于任何原因无法确定合作伙伴,则引发401(未授权)。

此函数适合并旨在覆盖< span class="docutils literal">odoo.addons.fastapi.dependencies.authenticated_partner_impl。

此函数返回的合作伙伴记录绑定到使用< span class="docutils literal">auth_jwt验证器上定义的用户策略获取的Odoo用户的环境。当使用< span class="docutils literal">authenticated_partner_impl时,这反过来又确保< span class="docutils literal">odoo.addons.fastapi.dependencies.authenticated_partner_env也绑定到正确的Odoo用户。

def auth_jwt_optionally_authenticated_partner() -> Partner

auth_jwt_partner相同,但如果没有Authorization头和cookie,或者JWT验证器找不到合作伙伴并声明合作伙伴不是必需的,则返回一个绑定到public用户的空记录集。

def auth_jwt_authenticated_odoo_env() -> Environment

如果可以使用JWT验证器对请求进行身份验证,则使用在auth_jwt验证器上定义的用户策略获取的Odoo用户返回Odoo环境。否则引发401(未授权)。

此函数适合并旨在覆盖odoo.addons.fastapi.dependencies.authenticated_odoo_env_impl

def auth_jwt_default_validator_name() -> str | None

返回要使用的默认JWT验证器的名称。

默认实现返回None,这意味着只允许一个活动的JWT验证器。此依赖项旨在被覆盖。

def auth_jwt_http_header_authorization() -> str | None

默认情况下,返回Authorization头中的凭据部分,或如果不存在则返回None。此依赖项旨在被覆盖,特别是使用fastapi.security.OAuth2AuthorizationCodeBearer,以便swagger处理OAuth2授权(这种覆盖仅在通过swagger界面使用时才是必要的)。

错误跟踪器

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

不要直接联系贡献者寻求支持或帮助解决技术问题。

致谢

作者

  • ACSONE SA/NV

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛使用。

当前 维护者

sbidoul

此模块是GitHub上的OCA/rest-framework项目的一部分。

欢迎您贡献力量。有关如何贡献的信息,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。

源分布

此版本没有可用的源分布文件。有关说明,请参阅生成分发存档的教程

构建分布

odoo_addon_fastapi_auth_jwt-16.0.1.0.4-py3-none-any.whl (25.4 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面