Microsoft Azure登录身份验证

Microsoft Azure OAuth 登录认证是一个有用的功能,允许 Odoo 用户使用他们的 Microsoft Azure 账户登录到他们的数据库。

这对于使用Azure Workspace的组织特别有帮助,希望组织内的员工可以使用他们的Microsoft帐户连接到Odoo。

警告

托管在Odoo.com上的数据库不应该使用OAuth登录作为数据库的所有者或管理员,因为这将会取消与他们的Odoo.com账户的数据库关联。如果为该用户设置了OAuth,那么该数据库将无法再从Odoo.com门户进行复制、重命名或其他管理操作。

配置

集成Microsoft登录功能需要在Microsoft和Odoo上进行配置。

Odoo 系统参数

首先激活 开发者模式,然后转到 设置 ‣ 技术 ‣ 系统参数

点击 创建 并在出现的新/空白表单上,将以下系统参数 auth_oauth.authorization_header 添加到 Key 字段,并将 Value 设置为 1。然后点击 保存 完成。

Microsoft Azure 仪表板

创建新应用程序

现在,Odoo中的系统参数已经设置好,是时候在Microsoft Azure中创建相应的应用程序了。要开始创建新应用程序,请转到 Microsoft的Azure门户 <https://portal.azure.com/> _。如果有的话,请使用 Microsoft Outlook Office 365 帐户登录,否则,请使用个人 Microsoft帐户 登录。

重要

一个具有对 Azure 设置 的管理访问权限的用户必须连接并执行以下配置步骤。

Next, navigate to the section labeled Manage Microsoft Entra ID (formally Azure Active Directory). The location of this link is usually in the center of the page.

现在,点击顶部菜单中的 Add (+) 图标,然后从下拉菜单中选择 App registration。在 Register an application 屏幕上,将 Name 字段重命名为 Odoo Login OAuth 或类似的可识别标题。在 Supported account types 部分中,选择 Accounts in this organizational directory only (Default Directory only - Single tenant) 选项。

警告

The Supported account types can vary by Microsoft account type and end use of the OAuth. For example: Is the login meant for internal users within one organization or is it meant for customer portal access? The above configuration is used for internal users in an organization.

选择 仅限个人 Microsoft 帐户,如果目标受众是门户用户。选择 仅限此组织目录中的帐户(仅限默认目录 - 单租户),如果目标受众是公司用户。

重定向 URL 部分,选择 Web 作为平台,然后在 URL 字段中输入 https://<odoo base url>/auth_oauth/signin 。Odoo 基本 URL 是您的 Odoo 实例可以访问的规范域名(例如,如果您托管在 Odoo.com 上,则为 mydatabase.odoo.com)在 URL 字段中。然后,点击 注册,应用程序将被创建。

认证

编辑新应用程序的身份验证,点击左侧菜单中的 身份验证 菜单项,在从上一步骤重定向到应用程序设置后。

接下来,将选择所需的 tokens 类型进行 OAuth 认证。这些不是货币 tokens,而是在 Microsoft 和 Odoo 之间传递的认证 tokens。因此,这些 tokens 没有费用;它们仅用于两个 APIs 之间的认证目的。通过向下滚动屏幕并选中标记为 Access tokens (used for implicit flows)ID tokens (used for implicit and hybrid flows) 的复选框来选择应由授权端点发出的 tokens。

身份验证设置和终端点令牌。

点击 保存 以确保这些设置已保存。

收集凭证

在 Microsoft Azure 控制台中创建并进行身份验证后,接下来将收集凭据。要执行此操作,请单击左侧栏中的“概述”菜单项。选择并复制出现的窗口中的“应用程序 (客户端) ID”。将此凭据粘贴到剪贴板/记事本中,因为此凭据将在稍后的 Odoo 配置中使用。

完成此步骤后,点击顶部菜单上的 Endpoints ,然后点击 OAuth 2.0 authorization endpoint (v2) 字段旁边的 copy icon 。将此值粘贴到剪贴板 / 记事本中。

应用程序ID和OAuth 2.0授权端点(v2)凭据。

Odoo设置

最后,在Microsoft Azure OAuth配置中的最后一步是在Odoo中配置一些设置。导航到: 设置 ‣ 集成 ‣ OAuth身份验证 并勾选激活OAuth登录功能的复选框。点击 保存 以确保进度被保存。然后,在登录界面加载后登录到数据库。

再次导航到 设置 ‣ 集成 ‣ OAuth 认证,然后点击 OAuth 提供商。现在,在左上角选择 新建 并将提供商命名为 Azure

将前一节中的 应用程序 (客户端) ID 粘贴到 客户端 ID 字段中。完成后,将新的 OAuth 2.0 授权端点 (v2) 值粘贴到 授权 URL 字段中。

对于 UserInfo URL 字段,请粘贴以下 URL: https://graph.microsoft.com/oidc/userinfo

Scope 字段中,粘贴以下值: openid profile email。接下来,在 CSS class 字段中输入以下值: fa fa-fw fa-windows,可以将 Windows 徽标用作登录屏幕上的 CSS 类。

勾选 Allowed 字段旁边的复选框以启用 OAuth 提供程序。最后,在 Login button label 字段中添加 Microsoft Azure。此文本将显示在登录页面上 Windows 徽标旁边。

在设置应用程序中设置Odoo提供商。

在Odoo中,:guilabel:`保存`更改以完成OAuth身份验证设置。

用户体验流程

要使用Microsoft Azure登录Odoo,用户必须位于 Odoo密码重置页面 。这是Odoo将Microsoft Azure帐户链接并允许用户登录的唯一方式。

注解

现有用户必须 重置他们的密码 以访问 Odoo 密码重置页面。新的 Odoo 用户必须点击通过电子邮件发送的新用户邀请链接,然后点击 Microsoft Azure。用户不应设置新密码。

要首次使用 Microsoft Azure OAuth 提供程序登录 Odoo,请导航到 Odoo 密码重置页面`(使用新用户邀请链接)。应该会出现一个密码重置页面。然后,点击标记为 :guilabel:`Microsoft Azure 的选项。页面将会重定向到 Microsoft 登录页面。

Microsoft Outlook登录页面。

输入 Microsoft Email Address 并点击 Next。按照流程登录账户。如果 2FA 已开启,则可能需要额外的步骤。

输入Microsoft登录凭据。

最后,在登录到帐户后,页面将重定向到一个权限页面,用户将被提示 接受 Odoo 应用程序访问其 Microsoft 信息的条件。

接受微软的条件以获得访问您的账户信息的权限。