0.0.13 • Published 4 years ago

@web-auth/webauthn-helper v0.0.13

Weekly downloads
144
License
MIT
Repository
github
Last release
4 years ago

Webauthn Helper

This package contains helper functions to handle Webauthn registration and authentication. It is primarily designed to be used with the Web-Auth Framework from Spomky-Labs.

Installation

With Yarn:

yarn add @web-auth/webauthn-helper

Usage

Registration

// Import the tool(s) ou need
import {useRegistration} from '@web-auth/webauthn-helper';

// We want to register new authenticators
const register = useRegistration({
    actionUrl: '/api/register',
    optionsUrl: '/api/register/options'
});

register({
    username: 'FOO4',
     displayName: 'baR'
})
    .then((response)=> console.log('Registration success'))
    .catch((error)=> console.log('Registration failure'))
;

Authentication

import {useLogin} from '@web-auth/webauthn-helper';

const login = useLogin({
    loginUrl: '/api/login',
    loginOptions: '/api/login/options'
});

login({
    username: 'FOO4'
})
    .then((response)=> console.log('Login success'))
    .catch((error)=> console.log('Login failure'))
;

Additional Header Parameters

For both useLogin and useRegistration methods, you can add custom header parameters.

import {useLogin} from '@web-auth/webauthn-helper';

const login = useLogin({
    loginUrl: '/api/login',
    actionHeader: {
        'X-TOKEN': 'Secured-TOKEN!!!'
    },
    loginOptions: '/api/login/options',
    optionsHeader: {
        'X-TOKEN': 'Secured-TOKEN!!!',
        'X-OTHER-PARAM': '1,2,3,4'
    }
});

Support

I bring solutions to your problems and answer your questions.

If you really love that project, and the work I have done or if you want I prioritize your issues, then you can help me out for a couple of :beers: or more!

Become a sponsor

Or

Become a Patreon

Contributing

Requests for new features, bug fixed and all other ideas to make this framework useful are welcome. If you feel comfortable writing code, you could try to fix opened issues where help is wanted or those that are easy to fix.

Do not forget to follow these best practices.

If you think you have found a security issue, DO NOT open an issue. You MUST submit your issue here.

Licence

This software is release under MIT licence.