gpt4 book ai didi

cakephp-1.3 - cakePHP Auth - 允许/拒绝,实际需要什么 isAuthorized?

转载 作者:行者123 更新时间:2023-12-04 06:14:52 25 4
gpt4 key购买 nike

检查这个:

function beforeFilter() {
$this->Auth->authorize = 'controller';
$this->Auth->allow('delete');
}

function isAuthorized() {
if ($this->Auth->user('role') != 'admin') {
$this->Auth->deny('delete');
}

...
}

(来自: http://book.cakephp.org/view/1255/AuthComponent-Methods#deny-1258)

这是 isAuthorized 的文档示例。如果我可以简单地在 beforeFilter 本身中设置条件,我需要它做什么?似乎是多余的无用代码..

最佳答案

它允许您将授权逻辑与可能驻留在 beforeFilter 回调中的其他逻辑分开。此外,由于它是一种方法,您可以通过在 AppModel 中实现它来利用继承,还可以覆盖或扩展各个 Controller 中的功能。您引用的代码示例并没有真正反射(reflect)该方法应该真正返回 true/false 的事实。一个更好的例子可能是通过在 AppModel 中放置这样的东西来授权对站点范围内的管理路由页面的访问:

public function isAuthorized() {
if (isset($this->params['admin']) && $this->Auth->user('role') == 'admin') {
return true;
}
return false;
}

关于cakephp-1.3 - cakePHP Auth - 允许/拒绝,实际需要什么 isAuthorized?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7381978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com