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