tritum/turnstile

TYPO3 Extension to add Turnstile to EXT:form

Installs: 443

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 2

Forks: 1

Open Issues: 1

Type:typo3-cms-extension

1.0.0 2023-09-27 07:55 UTC

This package is auto-updated.

Last update: 2024-04-27 15:53:10 UTC


README

TYPO3 extension Total downloads Stability ci phpstan TYPO3 versions Latest version

TYPO3 Extension to add Turnstile to EXT:form

This TYPO3 extension provides a Turnstile integration for the TYPO3 Form Framework (EXT:form). Turnstile is a free captcha alternative provided by Cloudflare. It is GDPR compatible. For more information check the Turnstile website.

We were inspired by an article published on heise.de. The article states that bots are better than ever in solving captchas. In 2022, Cloudflare released Turnstile as an alternative to captchas, see 1 and 2.

Quick Setup

  1. Install the extension and activate it.
  2. Add the static TypoScript configuration to your TypoScript template.
  3. Get a Turnstile site_key and a privateKey. Set the TypoScript Constants appropriately.
  4. Add a Turnstile element to a form.
  5. All done!

Get Turnstile keys for your website

You need two API keys from Cloudflare. Retrieving those keys is free of charge. Open your Cloudflare dashboard. Add a new entry for your website. In order to do so, provide a name of the website and the domain. This also works for multiple environments, just provide the domain like tritum.de. Any subdomain or local domain will also be supported.

Furthermore, you can choose between three different modes for the challenge. For more information see: https://developers.cloudflare.com/turnstile/reference/widget-types/.

TypoScript Constants

Set the following TypoScript Constants:

plugin.tx_turnstile {
    settings {
        # Get API keys at https://dash.cloudflare.com/?to=/:account/turnstile
        siteKey = <your-site-key>
        privateKey = <your-private-key>
    }
}

Environment variables

As an alternative to the TypoScript configuration, you can also use environment variables:

  • TURNSTILE_SITE_KEY
  • TURNSTILE_PRIVATE_KEY

Content Security Policy

If you are using CSP, make sure to adjust them accordingly:

  • script-src should include https://challenges.cloudflare.com
  • frame-src should include https://challenges.cloudflare.com
  • style-src should include https://challenges.cloudflare.com

Privacy

Make sure to inform your users of your usage of Turnstile and what that means.

For more information see: https://www.cloudflare.com/de-de/trust-hub/gdpr/.

Help & Support

Please use GitHub for issue tracking. For more information see: https://github.com/tritum/turnstile/issues.

Kudos

A big kudos to Ralf Zimmermann. He is the brain behind the TYPO3 Form Framework and created this extension initially. TRITUM came up with the idea and maintains this peace of fine coding.