2FA with Google Authenticator. Forked from ng-soft's v7 implementation and modified to work with v8. Sebastian's original version supported YubiKey and Google Authenticator. This version contains Google Authenticator only.
- This version has been built against v8.1.1.
- There is a migration to add a new custom table to the database. The table is named TwoFactor.
- Installation will add a new dashboard for enabling 2FA for the current user.
To test the 2FA you can run the project. This will run the install process and setup a new site.
To add 2FA to an existing project
- Change the ApplicationName constant in TwoFactorAuthentication\constants.cs (this is the application name that appears in Google Authentictor)
- Build the project
- Copy YubiKey2Factor.dll, YubicoDotNetClient.dll, Google.Authenticator.dll to existing site's bin directory
- Copy the App_Plugin\2FactorAuthentication directory to the existing site's App_Plugin directory
The upgrade to v8 required
- Modifying the migration to use the v8 method
- Moving the startup events to a component (and composer)
- Moving all of the database calls to a service so the database scope can be used.
- Adding configuration to the package.manifest for loading the dashboard.
- Updating method parameters as many of the Umbraco authentication methods have changed their signature.
- Changing dialogService to editorServce in the Angular login controller.