Итак, я несколько месяцев разбираюсь с php, в частности, последнее время делаю это с использование Silex. Сейчас настала очередь реализовать авторизаци. и, соответственно, я начал разбираться с SecurityServiceProvider.
Использую документацию: http://silex.sensiolabs.org/doc/providers/security.html
Приведенный пример я попытался реализовать, но он не работает. Подскажите почему?
Реализованный пример состоит из 3х частей:
Регистрация SecurityServiceProvider:
$app['security.firewalls'] = array(
'admin' => array(
'pattern' => '^/admin/',
'form' => array('login_path' => '/login', 'check_path' => '/admin/login_check'),
'users' => array(
'admin' => array('ROLE_ADMIN', '5FZ2Z8QIkA7UTZ4BYkoC+GsReLf569mSKDsfods6LYQ8t+a8EW9oaircfMpmaLbPBh4FOBiiFyLfuZmTSUwzZg=='),
),
),
);
Контроллер /login:
$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'),
));
});
twig:
<form action="{{ path('admin_login_check') }}" method="post">
{{ error }}
<input type="text" name="_username" value="{{ last_username }}" />
<input type="password" name="_password" value="" />
<input type="submit" />
</form>