跳转到主要内容

允许用户通过OpenID Connect提供者登录

项目描述

Beta License: AGPL-3 OCA/server-auth Translate me on Weblate Try me on Runboat

此模块允许用户通过OpenID Connect提供者使用授权代码流或隐式流进行登录。

注意,不建议使用隐式流,因为它将访问令牌暴露给浏览器和http日志。

目录

安装

此模块依赖于python-jose库,不要与PyPI上可用的jose库混淆。

配置

Microsoft Azure设置

带有OpenID Connect授权代码流的示例配置。

  1. 在Azure中配置一个新的Web应用,使用OpenID和代码流(请参阅提供者文档

  2. 在此应用中,重定向URL必须是“<您的服务器URL>/auth_oauth/signin”,当然,此URL应该可以从Azure访问

  3. 在Odoo中创建一个新的认证提供者,参数如下(有关更多信息,请参阅门户文档

image

image1

单租户提供者限制了您的租户用户的访问,而多租户允许所有AzureAD用户的访问,因此外国公司的用户可以无需客座账户即可使用他们的AzureAD登录。

  • 提供者名称:Azure AD单租户

  • 客户端ID:应用程序(客户端)ID

  • 客户端密钥:客户端密钥

  • 允许:是

  • 提供者名称:Azure AD多租户

  • 客户端ID:应用程序(客户端)ID

  • 客户端密钥:客户端密钥

  • 允许:是

  • 将 {tenant_id} 替换为您的 Azure 租户 ID

image2

Keycloak设置

带有OpenID Connect授权代码流的示例配置。

在 Keycloak 中

  1. 配置新的客户端

  2. 确保已启用授权代码流。

  3. 将客户端访问类型配置为“机密”,并在凭据选项卡中注意客户端密钥

  4. 配置重定向 URL 为 “<您的服务器 URL>/auth_oauth/signin”

在 Odoo 中,使用以下参数创建新的 Oauth 提供商

  • 提供者名称:Keycloak(或您喜欢的任何名称,用于标识您的 Keycloak 提供商)

  • 认证流程:OpenID Connect(授权代码流)

  • 客户端 ID:在 Keycloak 中配置客户端时输入的相同客户端 ID

  • 客户端密钥:在 Keycloak 中的客户端凭据选项卡中找到

  • 允许:是

  • 正文:登录页面上的链接文本,例如“使用 Keycloak 登录”

  • 作用域:openid email

  • 认证 URL:在 Keycloak 域的 OpenID 端点配置中找到的“authorization_endpoint” URL

  • 令牌 URL:在 Keycloak 域的 OpenID 端点配置中找到的“token_endpoint” URL

  • JWKS URL:在 Keycloak 域的 OpenID 端点配置中找到的“jwks_uri” URL

用法

在登录页面上,点击您配置的认证提供者。

已知问题/路线图

  • 当访问登录屏幕时,检查是否存在现有令牌,并直接登录,无需单击 SSO 链接

  • 在注销时,可以选择同时在 SSO 提供商处注销。

变更日志

17.0.1.0.0 2024-03-20

  • Odoo 17 迁移

16.0.1.1.0 2024-02-28

  • 将 OpenID Connect 修复从 15.0 前进到 16.0

16.0.1.0.2 2023-11-16

  • 更新 Readme 链接

16.0.1.0.1 2023-10-09

  • 添加 AzureAD 代码流提供者

16.0.1.0.0 2023-01-27

  • Odoo 16 迁移

15.0.1.0.0 2023-01-06

  • Odoo 15 迁移

14.0.1.0.0 2021-12-10

  • Odoo 14 迁移

13.0.1.0.0 2020-04-10

  • Odoo 13 迁移,添加授权代码流。

10.0.1.0.0 2018-10-05

  • 初始实现

错误跟踪器

问题跟踪在 GitHub Issues 上。如有问题,请检查是否已报告该问题。如果是您首先发现的,请通过提供详细且受欢迎的 反馈 来帮助我们解决。

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

鸣谢

作者

  • ICTSTUDIO

  • André Schenkels

  • ACSONE SA/NV

贡献者

维护者

此模块由 OCA 维护。

Odoo Community Association

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

当前 维护者

sbidoul

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

欢迎您贡献。要了解如何贡献,请访问 https://odoo-community.org/page/Contribute

项目详细信息


下载文件

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

源代码分布

本发行版没有提供源代码分布文件。请参阅有关生成分布存档的教程。

构建分布

odoo_addon_auth_oidc-17.0.1.0.0.5-py3-none-any.whl (176.4 kB 查看哈希值)

上传时间: Python 3

由以下支持