配置 Discourse 的 GitHub 登录

:bookmark: 本指南说明如何通过配置 OAuth 凭据,将 GitHub 设置为 Discourse 论坛的登录选项。

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

概述

GitHub 登录集成允许用户使用其 GitHub 帐户登录您的 Discourse 站点。这提供了一个便捷的身份验证选项,对于面向开发者的社区尤其有用。

设置 GitHub OAuth

  1. 访问 GitHub 的开发者设置:https://github.com/settings/developers

  2. 在左侧菜单中,找到并单击 OAuth Apps(OAuth 应用)

  3. 单击 New OAuth App(新建 OAuth 应用)

  4. 填写所需字段:

    • Application name(应用名称):输入您站点的名称
    • Homepage URL(主页 URL):您站点的基本 URL(例如 https://discourse.example.com
    • Application description(应用描述)(可选):简要描述您的站点
    • Authorization callback URL(授权回调 URL):使用您站点的域名加上路径 /auth/github/callback
      (例如 https://discourse.example.com/auth/github/callback

  1. 单击 Register application(注册应用)

配置 Discourse 设置

  1. 注册后,GitHub 将在应用设置页面显示您的 Client ID(客户端 ID)。

  2. 要获取 Client Secret(客户端密钥),请单击 Generate a new client secret(生成新的客户端密钥)。请立即复制它——它只会显示一次。

  3. 在您的 Discourse 管理设置中,配置以下内容:

    • github_client_id 设置为您的客户端 ID
    • github_client_secret 设置为您的客户端密钥
    • 启用 enable github logins(启用 GitHub 登录)设置

测试集成

  1. 从您的 Discourse 站点登出
  2. 在登录页面上,您现在应该会看到一个“使用 GitHub”的登录选项
  3. 测试登录流程以确保其按预期工作

最佳实践

  • 确保您的客户端密钥安全,切勿公开分享
  • 定期检查您的 GitHub OAuth 应用设置
  • 考虑在 GitHub 的 OAuth 应用设置中启用额外的安全功能

常见问题及解决方案

  • 如果登录失败,请验证您的回调 URL 是否与 GitHub 中配置的完全匹配
  • 确保您站点的 SSL 证书有效,因为 GitHub 要求使用 HTTPS
  • 检查客户端 ID 和密钥是否都已正确输入到 Discourse 设置中

附加资源

45 个赞