Skip to content

feat: Add multiple providers and proxy improvements#96

Open
HowieHz wants to merge 9 commits into
halo-sigs:mainfrom
HowieHz:feat-support-linuxdo-and-refactor-proxy
Open

feat: Add multiple providers and proxy improvements#96
HowieHz wants to merge 9 commits into
halo-sigs:mainfrom
HowieHz:feat-support-linuxdo-and-refactor-proxy

Conversation

@HowieHz

@HowieHz HowieHz commented Feb 7, 2026

Copy link
Copy Markdown
  • 支持 LINUX DO 论坛登录(支持 OIDC),此论坛流量情况
  • 支持 Google 登录(支持 OIDC)
  • 重构代理相关,现在,以下请求也会走文档中提到的代理配置。
    • 用户信息请求
    • OIDC JWKS (JSON Web Key Set) 获取
    • OIDC Issuer 发现
  • 相对应的修订文档
  • 优先尝试 OIDC,失败降级为 OAuth2
  • 实现 OIDC Issuer 发现
    • 配置了 jwkSetUri 时,直接从该 URI 获取 JWKS
    • 仅配置 issuerUri 时,自动访问 .well-known/openid-configuration 获取 JWKS 位置
使用户信息请求和 OIDC 请求能正确通过代理。
支持 LINUX DO 论坛登录和 Google 登录。
实现 OIDC Issuer 发现。

已经过测试:
image
image

Co-Authored-By: HowieHz <94725606+HowieHz@users.noreply.github.com>
@f2c-ci-robot f2c-ci-robot Bot added the do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. label Feb 7, 2026
@f2c-ci-robot

f2c-ci-robot Bot commented Feb 7, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign johnniang for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@HowieHz

HowieHz commented Feb 9, 2026

Copy link
Copy Markdown
Author

@JohnNiang

@HowieHz

HowieHz commented Feb 9, 2026

Copy link
Copy Markdown
Author

在线测试 -> https://howiehz.top/uc

@iLay1678

Copy link
Copy Markdown
Contributor

pr规范要求必须附带release-note,可以参考下面的

自定义 SSO 支持配置 issuerUri、jwkSetUri 以及多个 scope

@f2c-ci-robot f2c-ci-robot Bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. labels Feb 10, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds new OAuth2/OIDC providers (Google, LINUX DO) and refactors OAuth2/OIDC network calls to consistently use the configured proxy, with corresponding documentation and UI asset updates.

Changes:

  • Add Google and LINUX DO provider definitions (AuthProvider + Oauth2ClientRegistration) and icons.
  • Route user-info requests and OIDC JWKS fetching through the proxy-configured WebClient.
  • Update README to reflect OIDC support, new providers, and expanded proxy scope.

Reviewed changes

Copilot reviewed 4 out of 6 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/main/resources/static/linuxdo.svg Adds LINUX DO icon for provider UI.
src/main/resources/static/google.svg Adds Google icon for provider UI.
src/main/resources/extensions/client-registrations.yaml Adds Google and LINUX DO client registration defaults.
src/main/resources/extensions/auth-provider.yaml Adds Google and LINUX DO auth provider entries; fixes indentation for SSO config map.
src/main/java/run/halo/oauth/HaloOAuth2AuthenticationWebFilter.java Uses proxy-enabled WebClient for token exchange + userinfo; introduces custom OIDC JWT decoder factory for JWKS retrieval.
README.md Documents OIDC support, new providers, and expanded proxy coverage.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/main/java/run/halo/oauth/HaloOAuth2AuthenticationWebFilter.java Outdated
Comment thread src/main/java/run/halo/oauth/HaloOAuth2AuthenticationWebFilter.java Outdated
Comment thread README.md
Comment thread src/main/java/run/halo/oauth/HaloOAuth2AuthenticationWebFilter.java Outdated
HowieHz and others added 2 commits February 11, 2026 16:23
….java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
….java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@ruibaby ruibaby requested a review from JohnNiang February 11, 2026 08:36
@HowieHz HowieHz changed the title feat: Add LINUX DO provider and proxy improvements feat: Add multiple provider and proxy improvements Feb 11, 2026
@HowieHz HowieHz changed the title feat: Add multiple provider and proxy improvements feat: Add multiple providers and proxy improvements Feb 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-note Denotes a PR that will be considered when it comes time to generate release notes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants