2012-06-23 6 views
7

मैं सिम्फनी 2 में kernel.request ईवेंट के लिए मूल श्रोता लिखने की कोशिश कर रहा हूं। सेवा परिभाषा बहुत सरल है और टिप्पणियां JMSDiExtraBundle से आती हैं।प्रमाणीकरण टोकन हमेशा symfony 2 में kernel.request घटना में शून्य है?

समस्याओं कि $context->getToken() हमेशा अशक्त भी उपयोगकर्ता पूरी तरह से प्रमाणित है है:

/** 
* @Service("request.set_messages_count_listener") 
* 
*/ 
class RequestListener 
{ 

    /** 
    * @var \Symfony\Component\DependencyInjection\ContainerInterface 
    */ 
    private $container; 

    /** 
    * @InjectParams({"container" = @Inject("service_container")}) 
    * 
    */ 
    public function __construct(ContainerInterface $container) 
    { 
     $this->container = $container; 
    } 

    /** 
    * @Observe("kernel.request", priority = 255) 
    */ 
    public function onKernelRequest(GetResponseEvent $event) 
    { 
     $context = $this->container->get('security.context'); 
     var_dump($context->getToken()); die(); 
    } 

} 

मुझे लगता है कि मेरी सुरक्षा सेटअप ठीक काम कर रहा है। तब समस्या क्या हो सकती है?

secured_area: 
    pattern: ^/app/ 
    switch_user: true 
    form_login: 
     check_path: /app/login_check 
     login_path: /app/login 
     default_target_path: /app/dashboard 
     always_use_default_target_path: true 
    logout: 
     path: /demo/secured/logout # TODO 
     target: /demo/    # TODO 

access_control: 
    - { path: ^/app/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/app/users, roles: ROLE_MNG_USERS } 
    - { path: ^/app/messages, roles: ROLE_MNG_USERS } 
    - { path: ^/app/roles, roles: ROLE_MNG_PACKAGES_FEATURES } 
    - { path: ^/app/packages, roles: ROLE_MNG_PACKAGES_FEATURES } 
    - { path: ^/app/,   roles: ROLE_USER } 

उत्तर

19

priority = 255 के साथ, अपने श्रोता सुरक्षा फ़ायरवॉल (priority = 8, look here) से पहले कहा जाता है।

अपनी प्राथमिकता बदलने की कोशिश करें।

+0

धन्यवाद, अब काम करता है। – gremo

+0

यहां देखें https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Security/Http/Firewall.php#L93, धन्यवाद। :) – umpirsky

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^