Code Monkey home page Code Monkey logo

kirby-2fa's Introduction

Kirby 2fa

Two factor authentication for Kirby 3 panel.

cover

Installation

Before install, have in mind that the only way to implement this is by replacing the default panel login view. Hence if you have your implementation, installing this plugin can be conflictive.

Download

Download and copy the content of this repository to /site/plugins/kirby-2fa directory.

Composer

composer require graphicmarket/kirby-2fa

Setup

  1. Add a field in your user blueprint
  auth:
    type: 2fa
  1. A button will appear on the panel. When you click on it the next modal will be displayed, just follow the steps to configure.

panel-setup


You can add to your config file where you want the auth data will be stored, which must be a SQL lite file. Don't worry about creating the file you only need to specify the path with the filename. the file will be auto-created and configured if it doesn't exist.

โš ๏ธ This option is strongly recommended, save the file in a secure directory, don't push it to a repository.

  'graphicmarket.kirby-2fa.database' => 'full/path/to/kirby-2fa/db.sqlite'

Too, you can use a function that returns a string, if you wish to use the kirby() helper.

  'graphicmarket.kirby-2fa.database' => function () {
      return kirby()->root('storage') . '/kirby-2fa/db.sqlite';
  },

Change the issuer sounds like something that may you want to make. The issuer is the identifier that will be displayed on the authenticator app. By default is kirby-2fa panel.

issuer_example

  'graphicmarket.kirby-2fa.issuer' => 'Your company/website name',

Recommendation

Set in your auth options a lower number of trials by following the Kirby panel security options. five its ok for me.

Improvements and future features

  1. Passwordless login (Email/SMS).
  2. Implements own QRProvider.
  3. Save data in the user's DB.
  4. Choose the caching driver storge.
  5. Translation files.

License

MIT

Disclaimer

This plugin is provided "as is" with no guarantee. Use it at your own risk and always test it yourself before using it in a production environment. If you find any issues, please create a new issue.

Credits

kirby-2fa's People

Contributors

dependabot[bot] avatar ronaldtorres avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.