使用OpenID Connect配置LinkedIn登录

:bookmark: 本指南将介绍如何在您的 Discourse 站点上设置 LinkedIn OpenID Connect 身份验证,允许用户使用其 LinkedIn 帐户登录。

:person_raising_hand: 所需用户级别:管理员

摘要

LinkedIn OpenID Connect 身份验证允许用户使用其 LinkedIn 帐户登录您的 Discourse 站点。本指南将引导您完成配置 LinkedIn 身份验证的过程,从创建 LinkedIn 开发人员应用程序到在您的 Discourse 站点上启用该功能。

创建 LinkedIn 应用程序

  1. 前往 LinkedIn Developers
  2. 点击“创建应用程序”按钮
  3. 按照提供的设置流程进行操作

:information_source: 您需要一个与您的应用程序关联的 LinkedIn 页面。此关联稍后无法更改,因此请确保在设置过程中选择正确的页面。

启用 OpenID Connect

  1. 在您的 LinkedIn 应用程序中导航到“产品”选项卡
  2. 请求访问“使用 OpenID Connect 登录 LinkedIn”

获取您的凭据

启用“使用 LinkedIn 登录”后:

  1. 点击“查看端点”按钮
  2. 选择“身份验证”选项卡以访问您的凭据

配置 Discourse 设置

  1. 在您的 Discourse 管理员设置中,使用来自 LinkedIn 的凭据配置以下字段:

    • linkedin_oidc_client_id
    • linkedin_oidc_client_secret
  2. 返回 LinkedIn 开发人员门户,并在“身份验证”选项卡下添加一个授权的重定向 URL:

    • 格式:https://discourse.example.com/auth/linkedin_oidc/callback
    • discourse.example.com 替换为您的站点域名
    • 对安全站点(推荐)使用 https://,对不安全站点使用 http://

  1. 在您的 Discourse 站点上启用 LinkedIn 身份验证:
    • 在您的站点设置中将 enable_linkedin_oidc_logins 设置为 true

故障排除

如果您在客户端密钥验证方面遇到问题,请确保您运行的是最新版本的 Discourse,因为最近已进行更新以适应 LinkedIn 的新密钥格式。

常问问题

LinkedIn 登录是否要求用户在 Discourse 中输入其 LinkedIn 凭据?

否,用户将被重定向到 LinkedIn 的安全登录页面进行身份验证,然后在授权后返回您的 Discourse 站点。

重定向 URL 协议(http vs https)应使用什么?

始终使用您的 Discourse 站点使用的相同协议(http 或 https)。如果您的站点运行在 https 上,请在重定向 URL 中使用 https。

附加资源

4 个赞

4 个帖子已拆分为新主题:LinkedIn OIDC 客户端密钥未正确验证 nee 格式

密钥格式不匹配

Discourse 团队已根据源代码中 LinkedIn 的更新进行了更新,请更新您的 Discourse 页面。
阅读:LinkedIn OIDC client secret not correctly validating new format - #4 by ted

1 个赞

有趣的是,此功能在 Discourse 上未启用 :wink:

1 个赞

您好,LinkedIn 登录是如何工作的?这意味着无需在 Discourse 中输入即可使用 LinkedIn 电子邮件和密码吗?谢谢。

我想在我的网站上尝试 LinkedIn 登录(从私密的 Firefox 窗口),但收到了这个错误消息:redirect_uri 与注册值不匹配。

您好,“将 https 替换为 http”是正确的吗?我的网站是 https 的,所以 http 不会起作用,对吗?谢谢。

您好,我在 Discourse 和 LinkedIn 中的所有设置都已正确配置,但有一位用户报告说他无法使用 LinkedIn 登录。我该如何检查我的设置是否正常工作?谢谢。

这似乎已损坏或本指南已过时,需要修订。请参阅我的帖子:Linkedin OAUTH Core Function - "The redirect_uri does not match the registered value"