symfony的安全組件應要求只有一個內核監聽器,當然,和CERAD在評論表示:「各種服務和註冊都是動態完成,因爲它們可以是不同的對於不同的防火牆「,基本上它就像內核偵聽器(2)中的自定義偵聽器(1),內核偵聽器的定義在SecurityBundle(3)中,來自app/config/security.yml的創建服務的魔力在SecurityExtension (4)SecurityBundle。
基本上,要將symfony安全性集成到非symfony項目中,您需要在AppKernel中添加SecurityBundle,所以最難的部分是擁有與其他系統共存的AppKernel。
(1)的Symfony \元器件\安全\ HTTP \防火牆\ ListenerInterface (2)的Symfony \元器件\安全\ HTTP \防火牆 (3)/供應商/ symfony的/ symfony的/ SRC/Symfony的/捆綁/ SecurityBundle /資源/ config/security.xml(4)Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension
驗證提供程序是Symfony 2的更復雜功能之一。各種服務和註冊都是動態完成的,因爲它們可能因不同的防火牆。大多數有趣的代碼都存在於SecurityBundle \ DependencyInjection中。通讀:http://symfony.com/doc/current/cookbook/security/custom_authentication_provider.html以瞭解所有事情。好玩的東西。挑戰掌握,但最終值得。 – Cerad 2014-10-03 15:03:18