后端注释
复制一个带有安装步骤和完整 Markdown 指南的设置提示。
您的后端仍然拥有正常的 WebAuthn 仪式:
- 生成注册和身份验证挑战
- 验证证明和断言响应
- 强制依赖方 ID 和挑战验证
- 以同样的方式存储凭据和计数器,浏览器流程一样
什么保持不变
标题:什么保持不变插件旨在保留您的现有WebAuthn code的前端形状。
- 在Web上,它转发到真实的浏览器WebAuthn API。
- 在native Capacitor上,它返回浏览器类似的凭据对象,背靠native passkey API。
- 您的后端可以保持相同的挑战和验证管道。
在Android上发生什么变化
标题:在Android上发生什么变化Android原生密钥不等同于浏览器信任模型。
- 数字资产链接让Android共享同样的依赖方和凭据生态系统。
- 文字
clientDataJSON.origin网站源起点的值仍然可能有所不同。 - 如果您的服务器只接受
https://your-domain即使Android原生断言有效,Android原生断言也可能会失败。
推荐的后端规则
标题:推荐的后端规则允许支持原生Android密钥的同一个依赖方域名的预期浏览器起源和预期Android应用起源。
这给了你:
- 网站浏览器的支持
- 在Capacitor应用中原生密钥的支持
- 同一个依赖方域名的同一个密钥生态系统
如果您需要直接JSON安全的调用
标题:如果您需要直接JSON安全的调用如果您的后端已经返回 PublicKeyCredentialCreationOptionsJSON 和 PublicKeyCredentialRequestOptionsJSON,您也可以使用直接插件 API 代替浏览器样式 shim:
import { CapacitorPasskey } from '@capgo/capacitor-passkey';
const registration = await CapacitorPasskey.createCredential({ origin: 'https://signin.example.com', publicKey: registrationOptionsFromBackend,});
const authentication = await CapacitorPasskey.getCredential({ origin: 'https://signin.example.com', publicKey: requestOptionsFromBackend,});