本指南阐述了如何通过配置 OAuth 凭据,将 GitHub 设置为您的 Discourse 论坛的登录选项。
需具备的用户级别:管理员
概述
GitHub 登录集成允许用户使用其 GitHub 帐户登录您的 Discourse 站点。这提供了一种便捷的身份验证方式,对于以开发者为中心的社区尤为实用。
设置 GitHub OAuth
- 访问 GitHub 的开发者设置页面:
https://github.com/settings/developers
- 在左侧菜单中,找到并点击 OAuth Apps。
- 点击 New OAuth App。
- 填写必要的字段:
- Application name:输入您站点的名称。
- Homepage URL:您站点的主 URL(例如,
https://discourse.example.com
)。 - Application description(可选):简要描述您的站点。
- Authorization callback URL:使用您站点的域名,并附加路径
/auth/github/callback
(例如,https://discourse.example.com/auth/github/callback
)。
- 点击 Register application。
配置 Discourse 设置
- 注册后,GitHub 将为您提供两个重要的凭据:
- 客户端 ID (Client ID)
- 客户端密钥 (Client Secret)
- 在您的 Discourse 管理设置中,配置以下内容:
- 将
github_client_id
设置为您的客户端 ID。 - 将
github_client_secret
设置为您的客户端密钥。 - 启用
enable github logins
设置。
测试集成
- 退出您的 Discourse 站点。
- 在登录页面,您现在应该看到一个“使用 GitHub 登录”的选项。
- 测试登录流程,确保其按预期工作。
最佳实践
- 务必妥善保管您的客户端密钥,切勿公开分享。
- 定期审查您的 GitHub OAuth 应用设置。
- 考虑在 GitHub 的 OAuth 应用设置中启用额外的安全功能。
常见问题与解决方案
- 如果登录失败,请验证您的回调 URL 是否与 GitHub 中配置的完全一致。
- 确保您站点的 SSL 证书有效,因为 GitHub 要求使用 HTTPS。
- 检查客户端 ID 和密钥是否在 Discourse 设置中正确输入。