Symfony CAPTCHA-Integration
Binden Sie TrustCaptcha mit wenigen Zeilen PHP in einen Symfony-Controller – oder, noch sauberer, in eine eigene Validator-Constraint – ein. Stoppen Sie botgetriebenen Spam in Logins, Registrierungen und Kontaktformularen, ohne CSRF, Twig oder die Form-Komponente zu brechen. EU-gehostet, DSGVO-konform und ohne Bilderrätsel.
Schnellstart
So funktioniert die Integration
1. CAPTCHA erstellen
Erstellen Sie ein Benutzerkonto oder melden Sie sich mit einem bestehenden Konto an. Anschließend erstellen Sie ein neues CAPTCHA oder wählen Sie ein bereits vorhandenes aus. Wenn Sie sich nicht sicher sind, ob TrustCaptcha das Richtige für Sie ist, können Sie unseren CAPTCHA-Service 14 Tage lang kostenlos und ohne Risiko testen.
Auf der CAPTCHA-Übersichtsseite finden Sie alle wichtigen Informationen wie den site-key und den license-key, und Sie können dort auch Ihren API-Key erstellen. Ermöglichen Sie Ihren Websites den Zugriff auf Ihr CAPTCHA, indem Sie diese einfach zur Liste der autorisierten Domains in den CAPTCHA-Sicherheitsregeln hinzufügen.


2. CAPTCHA-Widget in Ihr Twig-Template einbauen
Binden Sie das TrustCaptcha-Widget in das Twig-Template ein, das Ihr Formular rendert. Das Widget läuft im Hintergrund und fügt beim Absenden ein verstecktes Feld tc-verification-token hinzu, das auf $request->request ankommt wie jeder andere Input.
<script type="module" src="https://cdn.trustcomponent.com/trustcaptcha/3.0.x/trustcaptcha.esm.min.js"></script>
<form method="post" action="{{ path('contact_submit') }}">
<input type="hidden" name="_token" value="{{ csrf_token('contact') }}">
<input type="email" name="email" required>
<trustcaptcha-component sitekey="<your_site_key>"></trustcaptcha-component>
<button type="submit">Send</button>
</form>Das CAPTCHA-Widget wird anschließend in Ihrem Formular angezeigt:

Detaillierte Informationen zur CAPTCHA-Widget-Integration?
Für die vollständige Widget-Referenz – inklusive Themes, Sprachen, Custom Design und mehr – lesen Sie bitte unsere Dokumentation.
Dokumentation lesen
3. Token in Ihrem Symfony-Controller validieren
Holen Sie in Ihrem Symfony-Controller den Verifikationstoken aus dem Request, rufen Sie das Ergebnis über unsere PHP-Library ab und entscheiden Sie, ob die Anfrage akzeptiert werden soll.
Installieren Sie zunächst unsere TrustCaptcha-PHP-Library:
composer require trustcomponent/trustcaptcha-php:^3.0Validieren Sie dann den Token in Ihrem Controller und reagieren Sie auf das Ergebnis:
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
use TrustComponent\TrustCaptcha\TrustCaptcha;
class ContactController extends AbstractController
{
#[Route('/contact', name: 'contact_submit', methods: ['POST'])]
public function submit(Request $request): Response
{
$token = $request->request->get('tc-verification-token', '');
try {
$trustCaptcha = new TrustCaptcha('<your_api_key>');
$result = $trustCaptcha->getVerificationResult($token);
} catch (\Throwable $e) {
return $this->render('contact/index.html.twig', ['error' => 'CAPTCHA verification failed.']);
}
if (!$result->verificationPassed || $result->score > 0.5) {
return $this->render('contact/index.html.twig', ['error' => 'CAPTCHA verification failed.']);
}
// CAPTCHA bestanden — Anfrage verarbeiten
return $this->redirectToRoute('contact_success');
}
}Detaillierte Informationen zur Symfony-CAPTCHA-Integration?
Für die vollständige Schritt-für-Schritt-Anleitung – inklusive einer wiederverwendbaren eigenen Validator-Constraint für Projekte mit mehreren geschützten Endpunkten – lesen Sie bitte unsere Dokumentation.
Dokumentation lesen
Anderes Backend-Framework statt Symfony?
Wenn Sie ein anderes Framework nutzen, wählen Sie hier das passende Rezept aus. Ist Ihr Framework nicht aufgeführt, können Ihre Softwareentwickler die Verifizierung selbst integrieren – mithilfe unserer Dokumentation – oder unser Support-Team nach einer vorgefertigten Integration fragen.
4. Glückwunsch 🎉
Sie sind jetzt durch TrustCaptcha geschützt – Glückwunsch!

FAQs
Wo in einer Symfony-App läuft die CAPTCHA-Verifizierung?
Kann ich die CAPTCHA-Prüfung in den Symfony Validator einhängen?
Bindet die Symfony-Form-Komponente den versteckten Token des Widgets automatisch?
Ersetzt TrustCaptcha den CSRF-Schutz von Symfony?
Wo speichere ich den CAPTCHA-API-Key?
TrustCaptcha blockiert Spam und Bots – nicht Ihre Kunden. Keine Rätsel, DSGVO-konform, in der EU gehostet.


Schützen Sie Ihre Symfony-Anwendung mit TrustCaptcha – in nur wenigen Schritten!
- EU-hosted & DSGVO-ready
- Keine Rätsel
- 14 Tage kostenlos testen