Skip to content

请求将LinuxDo/Github OAuth2 改为通用 OAuth2 登录 #1106

@vxtls

Description

@vxtls

例行检查

  • 我已确认目前没有类似 issue
  • 我已确认我已升级到最新版本
  • 我已完整查看过项目 README,已确定现有版本无法满足需求
  • 我理解并愿意跟进此 issue,协助测试和提供反馈
  • 我理解并认可上述内容,并理解项目维护者精力有限,不遵循规则的 issue 可能会被无视或直接关闭

功能描述
OAuth2作为一个通用的身份验证协议,应该得到更加广泛的支持,并非只专门支持两个网站的OAuth2.0

  1. 修改"配置 Linux DO OAuth"和"配置 GitHub OAuth App" 为配置OAuth2.0
  2. 修改数据库结构,无需指明linux_do_id, 存储OAuth Providers的表名称可以是 oauth_providers
    (存储提供商基础信息,例如application name, Homepage URL(小部分提供商需要指定), Authorization callback URL,Provider Icon Path/Link,Required Claim Name, App ID和Secret ), 存储用户的表可以是 oauth_users 里面设计一些例如 provider_claim_name, provider_show_name, user_id,等相关需要的字段
  3. 添加一个选择型下拉框,内置几个通用的OAuth提供商,例如Google,Microsoft, x.com, github, gitlab.com, gitea.com, gitee.com, linuxdo, OpenAI Community,Nextcloud,Discord等 注意:提供自定义OAuth选项,给自建的OAuth服务器,例如GitHub Enterprise,Gitea,Nextcloud,Gitlab,ORY等留有余地

应用场景

  1. 我看到现在支持任意OIDC,OIDC 虽然规范更全,但实际使用较笨重、配置繁琐,轻量 OAuth2 支持满足绝大多数实际需求,很多的服务也不提供实际的OIDC认证,只提供OAuth2.0
  2. 企业内部常用 GitLab CE / Gitea / Nextcloud 等自建服务进行统一身份验证,目前无法使用项目现有认证方式
  3. 尤其重要的一点是,不同用户群体使用 Google、Microsoft、GitHub 登录需求强烈,当前能绑定的平台过于稀少,限制了许多用户的使用便利性
  4. LinuxDo 对海外用户不够友好,通用 OAuth 提供更好的兼容性

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions