PHPackages                             stepotronic/wcf-to-symfony-bridge-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. stepotronic/wcf-to-symfony-bridge-bundle

ActiveSymfony-bundle[Framework](/categories/framework)

stepotronic/wcf-to-symfony-bridge-bundle
========================================

Symfony WcfToSymfonyBridgeBundle

0.1.1(7y ago)023PHP

Since Mar 19Pushed 7y ago1 watchersCompare

[ Source](https://github.com/stepotronic/WcfToSymfonyBridgeBundle)[ Packagist](https://packagist.org/packages/stepotronic/wcf-to-symfony-bridge-bundle)[ RSS](/packages/stepotronic-wcf-to-symfony-bridge-bundle/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (2)DependenciesVersions (3)Used By (0)

WcfToSymfonyBridgeBundle
========================

[](#wcftosymfonybridgebundle)

A bundle containing guard authenticators able to login users from the wcf-database or the current session cookie.

Purpose of this bundle
----------------------

[](#purpose-of-this-bundle)

Interface existing installations of software of the woltlab community framework.

Configuration
-------------

[](#configuration)

Add the mentioned lines to your parameters. Since it is possible to have more than one installation the tables can and should be prefixed. The default is usually "wcf1\_"

`wcf_table_prefix: wcf1_`

The cookie prefix can be adjusted in the admin backend of the software so there is a configuration option for it as well:

`wcf_cookie_prefix: wcf_`

You need to set up a default success route. It will only be used if there is no request-url the user can be redirected to after the request.

`wcf_default_success_route: homepage`

Finally here is the security.yml that puts it all together:

```
security:
    encoders:
        stepotronic\WcfToSymfonyBridgeBundle\Entity\WcfUser:
          id: wcf.password_encoder
    providers:
        wcf_db:
            entity:
                class: WcfToSymfonyBridgeBundle:WcfUser
    firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false
        main:
            anonymous: ~
            logout: ~
            provider: wcf_db

            guard:
                entry_point: wcf.form_login_authenticator
                authenticators:
                    - wcf.cookie_hash_authenticator
                    - wcf.form_login_authenticator

    access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/, roles: ROLE_WCF }

```

In the main project you will have to also include the wcf sources. Ideally you can point directly to the used wcf installation alternatively you can also use the following in your composer.json

```
"repositories": [
    {
        "type": "package",
        "package": {
            "name": "woltlab/wcf",
            "version": "2.0",
            "source": {
                "url": "https://github.com/WoltLab/WCF",
                "type": "git",
                "reference": "2.0"
            }
        }
    }
],
"require": {
    "woltlab/wcf": "*"
},
"autoload": {
    "classmap": [
        "vendor/woltlab/wcf/wcfsetup/install/files/lib/"
    ]
},

```

It is possible to overwrite the default behaviour of the two guard authenticators. All redirects in cases of success or failure are configurable. Here is an example with a redirect to the wcf login url:

```
app.cookie_hash_authenticator:
    class: stepotronic\WcfToSymfonyBridgeBundle\Security\Guard\CookieHashAuthenticator
    arguments:
        - "@wcf.authentication_redirect_to_wcf_login_url"
        - "@wcf.authentication_response_no_action"
        - "@wcf.authentication_redirect_to_wcf_login_url"
        - "%wcf_to_symfony_bridge.cookie_prefix%"

```

Next steps
----------

[](#next-steps)

If you use it, be aware of the fact that I did not create a secure login controller here. Don't use it! It however can help you debug and maybe help me improve this bundle.

Rather implement your own controller with the route names:

```
security_login
security_login_check
security_logout

```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~431 days

Total

2

Last Release

2909d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ba6f81a8f8d41942be99a54332a932aff08fa9e26f159aab8a91db9dc779bf16?d=identicon)[stepotronic](/maintainers/stepotronic)

---

Top Contributors

[![stepotronic](https://avatars.githubusercontent.com/u/683595?v=4)](https://github.com/stepotronic "stepotronic (14 commits)")

### Embed Badge

![Health badge](/badges/stepotronic-wcf-to-symfony-bridge-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/stepotronic-wcf-to-symfony-bridge-bundle/health.svg)](https://phpackages.com/packages/stepotronic-wcf-to-symfony-bridge-bundle)
```

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M192](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
