Php SecurityServiceProvider Silex/Symfony身份验证

Php SecurityServiceProvider Silex/Symfony身份验证,php,symfony,silex,Php,Symfony,Silex,我是新来的Symfony和Silex。我正在遵循Silex文档,并尝试为我的应用程序实现登录访问,但我发现在尝试使用SecurityServiceProvider时遇到了困难,尽管我在这里尝试了许多解决方案,但似乎没有一个适合我。我使用的代码如下 $app->register(new Silex\Provider\SecurityServiceProvider(), array( 'security.firewalls' => array( 'annon' =

我是新来的Symfony和Silex。我正在遵循Silex文档,并尝试为我的应用程序实现登录访问,但我发现在尝试使用SecurityServiceProvider时遇到了困难,尽管我在这里尝试了许多解决方案,但似乎没有一个适合我。我使用的代码如下

$app->register(new Silex\Provider\SecurityServiceProvider(), array(
    'security.firewalls' => array(
        'annon' => array('pattern' => '^/'),
        'admin' => array(
            'pattern' => '^.*$',
           //'anonymous' => true,
            'form' => array('login_path' => '/', 
                            'check_path' => 'admin/login_check',
                            'default_target_path' => 'admin/orders',
                            'always_use_default_target_path' => true),
            'logout' => array(  'logout_path' => 'admin/logout',
                                'target'  => '/',
                                'invalidate_session' => true),
            'users' => array(
                'admin@hotmail.com' => array('ROLE_ADMIN', '5FZ2Z8QIkA7UTZ4BYkoC+GsReLf569mSKDsfods6LYQ8t+a8EW9oaircfMpmaLbPBh4FOBiiFyLfuZmTSUwzZg=='),
            ),
        ),
    ),
    'security.access_rules' => array(
        array('^/.+$', 'ROLE_USER'),
        array('^/.+$', 'ROLE_ADMIN'),
        array('^/.+$', 'ROLE_LABOR'),
        array('^/annon$', ''), // This url is available as anonymous user
    )
));
因此,登录后的用户应该能够访问admin/之后的所有内容。 PS:我是否必须执行检查路径路线?

您应该看看

可以删除防火墙定义
annon

应该有一个角色
是匿名身份验证的
安全性中可用。访问规则