Your application certainly has a user repository. Good news: there is no need to modify it!
The User Entity Repository can be completely decoupled from the user entity used by your application.
This repository should be declared as a Symfony service and shall implement Webauthn\Bundle\Repository\PublicKeyCredentialUserEntityRepositoryInterface
.
Hereafter an example where the application User Repository is injected. This repository uses Doctrine and provides findOneBy*
methods.
By default, the User Entity Repository is not able to register any user account. You can add this behaviour by implementing the following interfaces:
Webauthn\Bundle\Repository\CanRegisterUserEntity
Webauthn\Bundle\Repository\CanGenerateUserEntity