使用silex securityServiceProvider

时间:2015-10-01 22:36:35

标签: php security silex

我正在尝试为我的Silex应用程序构建一个简单的身份验证代码,但我无法使其正常工作。

我花了好几个小时试图弄清楚错误在哪里但找不到它.. 这是代码:

use Symfony\Component\Security\Core\User\User;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

$app = new Silex\Application();
$app['debug'] = true;

$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());

$app->register(new Silex\Provider\SecurityServiceProvider(), array(
   'security.firewalls' =>  array(
       'admin' => array(
           'pattern' => '^/admin.*',
           'http' => true,
           'form' => array(
               'login_path' => '/login',
               'check_path' => '/admin/login_check',
           ),
           'logout' => array(
               'logout_path' => '/admin/logout',
               'invalidate_session' => true
           ),
           'users' => $usersData,
       ),
    )
));

$app->get('/login', function(Request $request) use ($app) {
    return $app['twig']->render('login.html', array(
        'error'         => $app['security.last_error']($request),
        'last_username' => $app['session']-     >get('_security.last_username'),
    ));
});

该应用程序没有阻止任何路径,我真的不明白我错过了什么,因为我已经在另一个应用程序中做了这一切,一切正常...

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我在设置我的流浪机时出现问题,从头开始重建所有东西,现在它完美无缺。