GitHub
使用 GitHub 配置 OAuth2
本篇文档将以 GitHub 作为 SSO 身份提供商为例,演示如何为 Dify 企业版开启 OAuth2 授权协议。
通过启用此功能,企业版登录页将使用统一的身份认证入口以增强安全性。对于企业内部用户而言,无需输入复杂密码,使用组织账号登录即可通过验证,简化登录流程。
1. 在 GitHub 中创建 OAuth App
- 访问 GitHub 管理员后台页,导航至 Settings 页,选择 OAuth Apps 并创建新的 OAuth 应用。
- 按照页面提示,依次填写以下内容并完成应用创建:
- Application name 必填项,应用名称,可自拟。
- Homepage URL 必填项,主页链接,建议填写 Dify 企业版平台 URL。
- Application description 选填项,应用描述。
- Authorization Callback URL 必填项,回调链接,获取方法请参考下文。
如需了解更多关于 GitHub 的 OAuth2 应用创建方法,请参考 GitHub 文档。
2. 获取 Callback URL
根据所需要开启的 SSO 范围,Callback URL 有所差异。系统管理员需要将 Dify 企业版的 Callback URL 填写至对应的 GitHub OAuth2 应用程序内以完成创建流程。
点击 Dify 企业版的 Authentication 页,轻点 Workspace Settings 区域内的 ”+ New Identity Provider → New OAuth2 Provider”,在底部查看 Callback URL。
它通常为以下格式:
- 将其粘贴至 OAuth2 App 内的 Authorization callback URL 字段内。
3. 开启 OAuth2 认证
访问 Dify 企业版 Authentication 页,轻点 ”+ New Identity Provider → New OAuth2 Provider”,按照提示依次填写信息并完成配置。
前往 OAuth 应用程序,获取以下信息:
- Client ID
- Client Secrets
不同的 OAuth2 供应商的基础信息有所差异,具体以各个供应商的官方文档为准。以下信息仅用于参考,可按照实际需求进行调整。
- Authorization Endpoint:
https://github.com/login/oauth/authorize
- Token Endpoint:
https://github.com/login/oauth/access_token
- User Info Endpoint:
https://api.github.com/user
- Scopes:
openid,profile,email
4. 开启 SSO 强制认证(可选)
系统管理员打开以下两种场景的 SSO Enforcement 选项,开启强制认证:
- Workspace,登录 Dify 企业版 Workspace 时要求通过授权。
- WebApp, 使用由当前 Dify 企业版所创建的应用时,要求通过验证。
开启后,访问对应场景时将提示需获取访问授权。