You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Django项目中正确配置Passkeys?

Django Passkeys 配置问题解决方案

1. KEY_ATTACHMENT 错误修复

教程里的NONE是passkeys.Attachment枚举的成员,不是Python内置的None,直接用None会因不支持位运算报错。正确写法需调用库中枚举常量:

import passkeys
# 允许所有类型密钥,用位或组合所有枚举值
KEY_ATTACHMENT = passkeys.Attachment.NONE | passkeys.Attachment.CROSS_PLATFORM | passkeys.Attachment.PLATFORM

# 若仅需特定类型,比如只允许跨平台密钥:
# KEY_ATTACHMENT = passkeys.Attachment.CROSS_PLATFORM

passkeys.Attachment.NONE表示不限制密钥附件类型,和其他枚举值做位或运算可同时开放多种类型。

2. 认证后端与FIDO_SERVER_ID 确认

  • 认证后端设置:AUTHENTICATION_BACKENDS = ['passkeys.backend.PasskeyModelBackend']是正确的,该后端专门处理Passkey认证。若需保留传统用户名密码登录,可添加默认的ModelBackend:
    AUTHENTICATION_BACKENDS = [
        'passkeys.backend.PasskeyModelBackend',
        'django.contrib.auth.backends.ModelBackend',
    ]
    
  • FIDO_SERVER_ID 设置:本地开发环境下"localhost"是正确的,FIDO2的RP ID必须匹配项目域名,线上部署时需替换为实际域名(如"yourdomain.com")。

内容的提问来源于stack exchange,提问作者SaSSolino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 09:15:23