feat(auth)!: migrate WebAuthn to Passkey.#393
feat(auth)!: migrate WebAuthn to Passkey.#393HappyDIY wants to merge 1 commit intoOpenListTeam:mainfrom
Conversation
|
有点关系吧,修改成 passkey 可以把密钥保存在云端,登录的时候无需输入用户名,更加方便。 |
我的意思是,不要进行对 Issue 模板, DOCTYPE 大小写,末尾逗号等 与你这个PR要实现的功能无关的改动 |
|
哦知道了这就改 |
… management - Migrate traditional WebAuthn to Passkey to support cloud synchronization and username-less authentication - Rename all backend WebAuthn APIs to Passkey for improved standardization - Enable Passkey by default to align with current industry adoption trends - Display user device IP and User-Agent (UA) in Passkey management page for better device identification - Add upgrade flow to migrate legacy WebAuthn credentials to new Passkey format - Prevent creation of new Passkeys until legacy credentials are upgraded or removed to avoid post-upgrade incompatibility
7fd464b to
095ce1f
Compare
|
改好了,重新用 commit --amend 合并了一下。是因为 Prettier 格式化代码导致的。话说你们不是要求要格式化吗?这不是起到反作用了吗? |
|
两回事,你这是功能,格式化是标准,如果有大量的格式化异常可能会有成员单独提交格式化PR。主要是一事一PR原则。 另外,我不认为你的改动是合理的,首先默认启用不让禁用就很不合理,其次Passkey从来不是WebAuthN的替代,而是实现,我认为你的理解就已经不对了,至少我没有找到哪个官方说法认为是替代。WebAuthN是标准,基于FIDO2标准并专用于Web的子标准,子规范,Passkey只是简化一些流程,这部分你说的没问题,但应该不会是替代。 第三,不是所有东西都已经支持Passkey,不支持的情况下应回退。这一点我不确定,因为没有具体测试(而且在我看来Passkey的安全性不如Yubico Yubikey,甚至不如Google Titan Key)。有个可能的猜测,不支持的情况下会自动回退硬件密钥。--但可以确认的是,目前为止支持的情况下可选择拒绝使用Passkey而输入硬件密钥。 |
|
@jyxjjj 感谢你这么细地 review,我补充澄清下我这边想做的事情:
如果你觉得上面这套方向 OK,我就补一个 commit。 |
feat(passkey)!: 迁移 WebAuthn 至 Passkey 并默认启用,统一后端 API 命名
… management
Description / 描述
本次 PR 对现有 WebAuthn 认证体系进行整体升级,统一迁移至 Passkey 方案,并对相关接口与管理页面进行增强。
主要包括:
认证体系升级
接口命名标准化
webauthn相关 API 重命名为passkey默认策略调整
管理页面增强
旧凭证升级机制
Motivation and Context / 背景
随着主流科技公司全面推广 Passkey 体系,传统 WebAuthn 命名与使用方式已逐步过时。
本次升级解决以下问题:
Closes #XXXX
How Has This Been Tested? / 测试
Checklist / 检查清单
我已阅读 CONTRIBUTING 文档。
go fmtor prettier.我已使用
go fmt或 prettier 格式化提交的代码。我已为此 PR 添加了适当的标签(如无权限或需要的标签不存在,请在描述中说明,管理员将后续处理)。
我已在适当情况下使用"Request review"功能请求相关代码作者进行审查。
我已相应更新了相关仓库(若适用)。