限制访问后端程序的权限
目前的后端程序没有限制访问,你应该限制它的访问权限。
新建一个apps/backend/modules/post/config/security.yml文件,加入:
复制内容到剪贴板
代码:
all:
is_secure: on为comment模块新建同样的文件。
现在,你不能访问以上的两个模块由于还未登录。登录模块尚未建立,所以我们现在就建一个。创建登录模块,输入:
复制内容到剪贴板
代码:
$ symfony init-module backend security新建的模块将用来处理登陆请求。打开apps/backend/modules/security/templates/indexSuccess.php模版,加入:
复制内容到剪贴板
代码:
<h2>Authentication</h2>
<?php if ($sf_request->hasErrors()): ?>
Identification failed - please try again
<?php endif ?>
<?php echo form_tag('security/login') ?>
<label for="login">login:</label>
<?php echo input_tag('login', $sf_params->get('login')) ?>
<label for="password">password:</label>
<?php echo input_password_tag('password') ?>
<?php echo submit_tag('submit', 'class=default') ?>
</form>
打开apps/backend/modules/security/actions/actions.class.php,添加一个登陆的动作:
复制内容到剪贴板
代码:
public function executeLogin()
{
if ($this->getRequestParameter('login') == 'admin' && $this->getRequestParameter('password') == 'password')
{
$this->getUser()->setAuthenticated(true);
return $this->redirect('default/index');
}
else
{
$this->getRequest()->setError('login', 'incorrect entry');
return $this->forward('security', 'index');
}
}最后一步,把security模块设为默认的登陆模块。具体做法是,打开apps/backend/config/settings.yml,加入:
复制内容到剪贴板
代码:
all:
.actions:
login_module: security
login_action: index如果你现在访问Post的后端程序,你将会要求输入帐号和密码。

更多关于
安全的说明