codefareith / cf-google-authenticator
Enable Google 2FA (two factor authentication) for both, frontend- and backend accounts.
Fund package maintenance!
Patreon
Installs: 6 256
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 2
Forks: 14
Open Issues: 70
Type:typo3-cms-extension
Requires
- ext-json: *
- typo3/cms-core: ^8.7 || ^9.5
- typo3/cms-reports: ^8.7 || ^9.5
- typo3/cms-setup: ^8.7 || ^9.5
Requires (Dev)
- codeception/codeception: ^4.1
- phpunit/php-code-coverage: 5.3.2
- roave/security-advisories: dev-master
- typo3/testing-framework: ^3.4.2
Suggests
- typo3/cms-felogin: Needed to support 2FA for frontend accounts.
Replaces
- codefareith/cf_google_authenticator: v1.2.4
- typo3-ter/cf-google-authenticator: v1.2.4
- v1.2.x-dev
- dev-master / 1.2.x-dev
- v1.2.4
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.7
- v1.1.6
- v1.1.5
- v1.1.4
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-dependabot/composer/guzzlehttp/guzzle-6.5.8
- dev-dependabot/composer/guzzlehttp/psr7-1.8.5
- dev-dependabot/composer/codeception/codeception-4.1.22
- dev-dependabot/composer/symfony/yaml-4.4.29
- dev-dependabot/composer/symfony/polyfill-php80-1.23.1
- dev-dependabot/composer/symfony/console-4.4.29
- dev-dependabot/composer/symfony/http-foundation-5.3.6
- dev-dependabot/composer/symfony/polyfill-mbstring-1.23.1
- dev-dependabot/composer/theseer/tokenizer-1.2.1
- dev-dependabot/composer/symfony/routing-4.4.27
- dev-dependabot/composer/symfony/event-dispatcher-4.4.27
- dev-dependabot/composer/symfony/finder-4.4.27
- dev-dependabot/composer/symfony/css-selector-5.3.4
- dev-dependabot/composer/symfony/var-exporter-5.3.4
- dev-dependabot/composer/symfony/cache-5.3.4
- dev-dependabot/composer/symfony/expression-language-4.4.27
- dev-dependabot/composer/nikic/php-parser-4.12.0
- dev-dependabot/composer/typo3/cms-frontend-9.5.28
- dev-dependabot/composer/typo3/cms-reports-9.5.28
- dev-dependabot/composer/typo3/cms-extbase-9.5.28
- dev-dependabot/composer/typo3/cms-recordlist-9.5.28
- dev-dependabot/composer/typo3/cms-fluid-9.5.28
- dev-dependabot/composer/typo3/cms-backend-9.5.28
- dev-dependabot/composer/typo3/cms-setup-9.5.28
- dev-dependabot/composer/doctrine/cache-1.12.1
- dev-dependabot/composer/mikey179/vfsstream-1.6.9
- dev-dependabot/composer/doctrine/dbal-2.13.2
- dev-dependabot/composer/typo3fluid/fluid-2.7.0
- dev-dependabot/composer/codeception/codeception-4.1.21
- dev-dependabot/composer/symfony/polyfill-intl-icu-1.23.0
- dev-dependabot/composer/symfony/polyfill-php72-1.23.0
- dev-dependabot/composer/symfony/polyfill-php73-1.23.0
- dev-dependabot/composer/symfony/polyfill-intl-idn-1.23.0
- dev-dependabot/composer/symfony/polyfill-intl-normalizer-1.23.0
- dev-dependabot/composer/symfony/polyfill-ctype-1.23.0
- dev-dependabot/composer/doctrine/annotations-1.13.1
- dev-dependabot/composer/psr/log-1.1.4
- dev-dependabot/add-v2-config-file
- dev-dependabot/composer/guzzlehttp/psr7-1.8.2
- dev-dependabot/composer/symfony/cache-contracts-2.4.0
- dev-dependabot/composer/symfony/service-contracts-2.4.0
- dev-dependabot/composer/symfony/deprecation-contracts-2.4.0
- dev-dependabot/composer/typo3/cms-composer-installers-3.1.1
- dev-dependabot/composer/webmozart/assert-1.10.0
- dev-dependabot/composer/guzzlehttp/promises-1.4.1
- dev-dependabot/composer/psr/container-1.1.1
- dev-dependabot/composer/behat/gherkin-4.8.0
- dev-dependabot/composer/codeception/phpunit-wrapper-6.8.3
- dev-dependabot/composer/symfony/intl-5.2.1
- dev-dependabot/composer/sebastian/code-unit-reverse-lookup-1.0.2
- dev-dependabot/composer/sebastian/object-reflector-1.1.2
- dev-dependabot/composer/sebastian/exporter-3.1.3
- dev-dependabot/composer/sebastian/object-enumerator-3.0.4
- dev-dependabot/composer/sebastian/recursion-context-3.0.1
- dev-dependabot/composer/myclabs/deep-copy-1.10.2
- dev-dependabot/composer/doctrine/instantiator-1.4.0
- dev-dependabot/composer/typo3/phar-stream-wrapper-3.1.6
- dev-dependabot/composer/symfony/polyfill-php70-1.20.0
- dev-dependabot/composer/codeception/lib-asserts-1.13.2
- dev-dependabot/composer/paragonie/random_compat-9.99.100
- dev-dependabot/composer/phpdocumentor/reflection-docblock-5.2.2
- dev-dependabot/composer/phpdocumentor/type-resolver-1.4.0
- dev-develop
This package is auto-updated.
Last update: 2024-12-21 23:18:54 UTC
README
TYPO3 CMS extension to enable Google 2FA (two factor authentication) for both, frontend- and backend accounts.
Getting Started
Follow these instructions to enable Google 2FA in your TYPO3 CMS installation.
Installation
The extension needs to be installed as any other extension of TYPO3 CMS:
- Switch to the module “Extension Manager”.
- Get the extension
- Get it from the Extension Manager: Press the “Retrieve/Update” button, search for the extension key cf_google_authenticator and import the extension from the repository.
- Get it from typo3.org: You can always get the current version from https://extensions.typo3.org/extension/cf_google_authenticator/ by downloading either the t3x or zip version. Upload the file afterward in the Extension Manager.
- Get it from packagist.org: Add this extension as dependency using Composer:
composer require codefareith/cf-google-authenticator
- Change the extension configuration to your needs
Usage
After installing and activating the extension you'll be able to activate 2FA for backend and frontend users.
Backend
- Switch to the module "Backend Users"
- Select a user you wish to enable 2FA for
- Navigate to tab "Google Authenticator"
- Check "Enable Google Authenticator"
- Within the Google Authenticator App: scan the provided QR code or set up the authenticator manually by using the given secret
- Fill out "One-time password" with the code created by your App
- Save
On the TYPO3 CMS backend login screen, you'll notice a new field "Google Authenticator Code". If you've activated Google 2FA for your backend user, you'll need to enter the code, generated by the app, to log into your backend account.
If you'll ever lose your Google Authenticator, the only way to disable 2FA is via the database, by setting "tx_cfgoogleauthenticator_enable" to 0, for the desired user.
Frontend
In order to offer frontend users the possibility to secure their accounts via two-factor authentication, two conditions must be met[1]:
-
in the extension configuration the 2FA must be activated for the frontend (deactivated by default):
- Select the extension module and search for "[codeFareith] Google Authenticator".
- right click on the gear (Configure)
- activate the checkbox under "FE enabled" and then click on "save".
-
via the backend, the necessary plugin must be placed on a page provided for this purpose:
- Select a preferred page via the page module and make sure that it is only accessible for logged in frontend users.
- Then create a new content element on the aforementioned page.
- Under the "Plug-Ins" tab, select "General Plug-In".
- In the next step open the next tab called "Plug-Ins".
- Select "Google Two-Factor-Authentication Setup" from the dropdown and click on save. Done!
[1] After enabling/disabling frontend 2FA, you might need to flush frontend cache in order to show/hide the one-time password field in the login form.
History
See CHANGELOG.md