athlan / revive-symfony-security-bundle
Banner Google Web Designer hosting tool
Installs: 19
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
pkg:composer/athlan/revive-symfony-security-bundle
Requires
- php: >=5.6.0
- guzzlehttp/guzzle: 6.2.0
- lstrojny/fxmlrpc: 0.12.0
- php-http/guzzle6-adapter: 1.1.1
- php-http/message: 1.2.0
- symfony/security: 3.1.*
- zendframework/zend-diactoros: 1.3.5
Requires (Dev)
- mockery/mockery: 0.9.5
- phpunit/phpunit: 5.4.*
This package is auto-updated.
Last update: 2025-10-29 02:09:02 UTC
README
This bundle allows you to enable Symfony Security authentication by providing Revive Aderver credentials.
It allow you to build custom tools around Revive in Symfony Framework.
Installation
- Add composer dependency
    "require": {
        // ...
        "athlan/revive-symfony-security-bundle": "1.0.0"
        // ...
    },
- Add bundle to AppKernel.php
    public function registerBundles()
    {
        $bundles = [
        
            // ...
            
            new Revive\ReviveAuthenticationBundle\ReviveAuthenticationBundle(),
            
            // ...
- Define several services in your container:
services:
    # create user session repository service
    revive_user_sessions:
        parent: revive_authentication.repository.user_session.xml_rpc
        arguments:
            # you can provide here custom configured xml_rpc client or get the existing pre-configured one
            - "@revive_authentication.xml_rpc.client"
            # address to your Revive xml-rpc
            # Example: http://domain.com/www/api/v2/xmlrpc/
            # you can use parameter mechanism here
            - "%revive_service_url%"
    # create form-autehnticacor that exchanges UsernamePasswordToken from user provided form
    # to ReviveAuthenticationToken
    revive_authenticator:
        parent: revive_authentication.authenticator.login_form_authenticator
        arguments: ["@revive_user_sessions"]
    # create logout listener to destroy remote sessions (optional, but recommended)
    revive_authenticator_logout_handler:
        parent: revive_authentication.authenticator.logout_handler
        arguments: ["@revive_user_sessions"]
- Configure security.yml
security:
    # regiter Revive user provider
    providers:
        revive:
            id: revive_authentication.user_provider.revive_user_prototype
    firewalls:
        main:
            anonymous: ~
            simple_form:
                # regiter Revive form authenticator
                authenticator: revive_authenticator
                check_path: /login
                login_path: /login
                csrf_token_generator: security.csrf.token_manager
            logout:
                path: /logout
                target: /
                handlers: [ revive_authenticator_logout_handler ]
    access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/, roles: IS_AUTHENTICATED_FULLY }