Silex中的WebProfiler不显示用户

时间:2017-05-02 10:36:58

标签: php symfony security silex

我已将silex/web-profiler集成到Silex应用中:

"require-dev": {
    "silex/web-profiler": "^2.0"
}

并使用表单身份验证配置了一个示例防火墙:

// Security
$app['security.firewalls'] = array(
    'main' => array(
        'pattern' => '^/',
        'anonymous' => true,
        'form' => array('login_path' => '/login', 'check_path' => '/login_check'),
        'users' => array(
            'admin' => array('ROLE_ADMIN', '$2y$10$3i9/lVd8UOFIJ6PAMFt8gu3/r5g0qeCJvoSlLCsvMTythye19F77a'),
        ),
    )
);
$app->register(new Silex\Provider\SecurityServiceProvider(), array());

// Profiler
if ($app['debug']) {
    $app->register(new Silex\Provider\ServiceControllerServiceProvider());
    $app->register(new Provider\WebProfilerServiceProvider(), array(
        'profiler.cache_dir' => __DIR__.'/../cache/profiler',
        'profiler.mount_prefix' => '/_profiler', // this is the default
    ));
}
$app->boot();

我可以使用示例admin帐户登录并访问控制器中的用户,但WebProfiler不会显示用户选项卡:

enter image description here

是否应该另外配置?

1 个答案:

答案 0 :(得分:1)

为了在Web调试工具栏中显示包含用户信息的安全面板,您需要install also the security bundleSecurityDataCollector class resides)。

所以你只需要执行:

  

composer require --dev symfony / security-bundle

这应该足够了。