core icon indicating copy to clipboard operation
core copied to clipboard

自定义OAuth提供商

Open alexma233 opened this issue 6 months ago • 3 comments

Clear and concise description of the problem

希望能够加上自定义OAuth,不仅是GitHub和Google登录。 这样能够支持更多服务商,有更多选择和自定义空间,可以与其它应用联动,通过自建提供商的方式来增强隐私和速度。 例如Logto(可自部署)Clerk(商业平台)

并且我个人建议修改OAuth的配置流程。 目前所有提供商不论是否启用都会显示,不太符合整个项目的设计规范。 而且即使这种方法在提供商不算多的时候没有问题,但是会限制将来添加的自定义提供商只能有一个。 修改OAuth的配置流程可以使体验更好,符合直觉并解决限制

Suggested solution

  1. 更改管理界面
  • 管理页面改为只显示已经开启的提供商,没有开启的就会隐藏
  • 在右上角添加”添加“按钮,用于新增提供商
  • 添加菜单中提供自定义OAuth的选项,可以配置:OAuth的名称、发行人 URL、客户端 ID、客户端密、是否自动注册(还是需要手动添加账户)和OAuth的图标(用于在前端中显示)
  • 随机生成重定向 URI(因为多个自定义提供商使用同一URL会冲突)
  1. 更改后端,正确处理重定向 URI收到的请求
  2. 更新前端的显示
  3. 更新文档

Alternative

No response

Additional context

可以参考 https://immich.app/docs/administration/oauth/ https://docs.logto.io/quick-starts

Image Image Image Image

Validations

  • [x] Follow our Code of Conduct
  • [x] Read the Contributing Guide.
  • [x] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

alexma233 avatar Jun 15 '25 13:06 alexma233