Как правильно установить Passkeys для Django?

Я пытаюсь применить Passkeys к проекту Django, но я новичок в обоих и сталкиваюсь с трудностями.

Следуя инструкциям, которые я нашел здесь о том, как добавить Passkeys, я должен добавить следующий код в мой settings.py файл:

AUTHENTICATION_BACKENDS = \['passkeys.backend.PasskeyModelBackend'\] # Change your authentication backend
FIDO_SERVER_ID="localhost"      # Server rp id for FIDO2, it the full domain of your project
FIDO_SERVER_NAME="MTGStore"
import passkeys
KEY_ATTACHMENT = NONE | passkeys.Attachment.CROSS_PLATFORM | passkeys.Attachment.PLATFORM
Однако

NONE не является ключевым словом в Python, поэтому я попробовал использовать None, но это дало мне ошибку TypeError: unsupported operand type(s) for *: 'NoneType' and 'AuthenticatorAttachment'.

Также я думал, что использую localhost для идентификатора сервера, я не уверен, что нужно добавить для бэкенда аутентификации.

Что я упускаю?

Спасибо!

Вам не нужно использовать None для KEY_ATTACHMENT вообще. Исходя из того, что вам нужно для вашего проекта для конфига KEY_ATTACHMENT в вашем модуле settings.py, у вас должно быть что-то вроде следующих конфигов:

KEY_ATTACHMENT = passkeys.Attachment.PLATFORM

или

KEY_ATTACHMENT = passkeys.Attachment.CROSS_PLATFORM

Также, вы можете увидеть этот конфиг в примере проекта здесь в django-passkeys project.

In addition based on this import in this project, if you see AuthenticatorAttachment [python-fido2 ] object you'll find out you have just two above configs for this setting.

Вернуться на верх