Bundle Installation

This framework provides a Symfony bundle that will help you to use the components within your Symfony application.

If you use Laravel, you may be interested in this project: https://github.com/asbiin/laravel-webauthn

Installation

With Symfony Flex

Symfony Flex recipes are provided through a dedicated repository. It is highly recommended to add this repository before installing the bundle.

composer config --json extra.symfony.endpoint '["https://api.github.com/repos/Spomky-Labs/recipes/contents/index.json?ref=main", "flex://defaults"]'
composer.json
{
    ...
    "extra": {
        "symfony": {
            "endpoint": [
                "https://api.github.com/repos/Spomky-Labs/recipes/contents/index.json?ref=main",
                "flex://defaults"
            ]
        }
    }
}

Then, you can install the bundle or the complete framework:

composer require web-auth/webauthn-symfony-bundle #Will only install the bundle

#or
composer require web-auth/webauthn-framework# Will install the whole framework (not recommended)

As the recipes are third party ones not officially supported by Symfony, you will be asked to execute the recipe or not. When applied, the recipes will prompt a message such as WebAuthn Framework is ready.

Without Symfony Flex

If you don't use Symfony Flex, you must register the bundle manually.

config/bundles.php
<?php

return [
    //...
    Webauthn\Bundle\WebauthnBundle::class => ['all' => true],
];
config/routes/webauthn.php
<?php

declare(strict_types=1);

use Symfony\Component\Routing\Loader\Configurator\RoutingConfigurator;

return function (RoutingConfigurator $routes) {
    $routes->import('.', 'webauthn');
};

Repositories

The first steps are:

You may also want to configure the other options offered by the bundle. Please refer to the configuration references.

Firewall

Now you have a fully configured bundle, you can protect your routes and manage the user registration and authenticatin through the Symfony Firewall.

Last updated