Как правильно установить 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.