我是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:我是否必须实施check_path路由?
答案 0 :(得分:0)