Skip to content

feat(daemon & webpanel): 重构 ChmlFrp 模块以支持新版 OAuth 设备码授权#100

Merged
luluxiaoyu merged 1 commit intoMSLTeam:devfrom
chaoji233:feature/chmlfrp-auth
Apr 1, 2026
Merged

feat(daemon & webpanel): 重构 ChmlFrp 模块以支持新版 OAuth 设备码授权#100
luluxiaoyu merged 1 commit intoMSLTeam:devfrom
chaoji233:feature/chmlfrp-auth

Conversation

@chaoji233
Copy link
Copy Markdown
Contributor

@chaoji233 chaoji233 commented Mar 31, 2026

变更背景

由于 ChmlFrp 账户系统更新,旧的授权系统已不可用。本次重构适配新版 OAuth 2.0 设备码授权流程。


变更内容

核心变更

  • 重构登录和鉴权系统
  • 接入新版 OAuth Public Client 设备码授权流程

代码变更

Daemon

  • ChmlFrpProxyController.cs(新增)
    原因:ChmlFrp 更新后的安全设置不允许非 ChmlFrp 的跨域访问,因此只能通过后端代理调用

WebPanel

  • auth.ts(新增)
    封装 API 调用、客户端 ID 配置、权限管理等
  • CreateTunnelDialog.vue(重构)
  • index.vue(重构)
    适配新版鉴权系统

部署前注意

MSLX.WebPanel/src/pages/frp/createFrp/components/ChmlFrp/auth.ts 中的 ACCOUNT_OAUTH_CLIENT_ID 需要改为在“轻爪账户(account.qzhua.net)”控制台注册的客户端 ID,我在代码中用的是我注册的一个测试ID。轻爪账户控制台账号密码就是ChmlFrp账户密码,直接用ChmlFrp账户密码登录即可。如果有问题可以QQ联系我:242247494 ^ω^

客户端信息填写说明

Public Client 设备码授权模式不需要回调地址和登出回调地址,所以这俩可以随变填写或保持默认。
权限域全部选中、客户端类型设置打开(这个开关为开启Public Client模式)、设备码授权打开。

下图为设置图,可以直接照抄 :)
image

效果展示

设备码生成页面

9cb692ab-2fcc-4a98-b985-0afee1d8fc44 2913ba6b-9c31-4ce8-9b9f-ef74db444314

浏览器授权确认

a0d972aa64cd33613477e6b02855ae1d

测试情况

  • 本地测试通过
    • 登录流程验证
    • token 刷新验证
    • 权限校验验证

@luluxiaoyu luluxiaoyu merged commit b1a5b1b into MSLTeam:dev Apr 1, 2026
@luluxiaoyu
Copy link
Copy Markdown
Contributor

下次不需要编译前端了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants