首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Silex安全配置

Silex安全配置
EN

Stack Overflow用户
提问于 2016-11-17 09:43:48
回答 1查看 309关注 0票数 0

我在与silex的安全性做斗争:

我有以下几点:

代码语言:javascript
复制
$app->register(new Silex\Provider\SecurityServiceProvider());

后来:

代码语言:javascript
复制
$app['security.firewalls'] = array(
    'admin' => array(
        'pattern' => '^/admin',
        'http' => true,
        'users' => array(
            // raw password is foo
            'admin' => array('ROLE_ADMIN', '5FZ2Z8QIkA7UTZ4BYkoC+GsReLf569mSKDsfods6LYQ8t+a8EW9oaircfMpmaLbPBh4FOBiiFyLfuZmTSUwzZg=='),
        ),
    ),
);

但是当我点击路径"localhost/admin“时,我得到:

代码语言:javascript
复制
Found error: No route found for "GET /admin"

不懂西里克斯网页上的文档。我应该向控制器注册安全过滤器吗?

in在控制器中定义如下功能:

代码语言:javascript
复制
public function admin(){
        return 'Hello';
    }

这方面的路线是:

代码语言:javascript
复制
$app->get('/admin', 'app.vendor_controller:admin');

现在我明白了:

代码语言:javascript
复制
Hello

一旦我到达路径/admin,没有身份验证表单。所以不包括身份验证过程..。

编辑~

好的,在点击url/admin之后,我得到了要放置字段的身份验证横幅,作为用户和密码,我输入admin、foo,但这对此没有影响。

代码语言:javascript
复制
`A username and password are being requested by http://localhost:8080. The site says: “Secured”`

代码如下:

代码语言:javascript
复制
$app['security.firewalls'] = array(
    'admin' => array(
        'pattern' => '/admin',
        'http' => true,
        'users' => array(
            'admin' => array('ROLE_ADMIN', 'foo')
        )));
$app['security.access_rules'] = array(
    array('/admin', 'ROLE_ADMIN'),
);

$app->register(new Silex\Provider\SecurityServiceProvider(), array(
    'security.firewalls' => array(
    'pattern' => '/admin',
    'http' => true,
    'users' => array(
        // raw password is foo
        'admin' => array('ROLE_ADMIN', 'foo'),
    ))));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-17 10:23:42

您配置了一个与每个/admin* URL匹配的防火墙,但这并不意味着每个URL都需要身份验证。你可以成为一个匿名用户,这是很好的。如果您想告诉silex“用户需要在这里允许使用ROLE_ADMIN”,则需要添加

代码语言:javascript
复制
$app['security.access_rules'] = array(
    array('^/admin', 'ROLE_ADMIN'),
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40651436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档