对于简单的allow()/deny(),是否有一个CakePHP isAuthorized()?

对于简单的allow()/deny(),是否有一个CakePHP isAuthorized()?,php,cakephp,authentication,Php,Cakephp,Authentication,我有一个应用程序,其中的大部分访问控制都使用allow()/deny(),如果用户是否获得授权,我希望能够在beforeFilter()之前签入。如果我使用的是controller或其他身份验证方法之一,我可以使用isAuthorized(),但这对allow/deny不起作用-如果用户未登录但位于可公开访问的页面上,我希望它返回true 退一步考虑其他解决方案:我让我的应用程序使用子域(user.example.com)进行设置,如果他们不使用子域,我想返回404,用于非前端页面,并且只允许他

我有一个应用程序,其中的大部分访问控制都使用allow()/deny(),如果用户是否获得授权,我希望能够在beforeFilter()之前签入。如果我使用的是controller或其他身份验证方法之一,我可以使用isAuthorized(),但这对allow/deny不起作用-如果用户未登录但位于可公开访问的页面上,我希望它返回true

退一步考虑其他解决方案:我让我的应用程序使用子域(user.example.com)进行设置,如果他们不使用子域,我想返回404,用于非前端页面,并且只允许他们通过用户子域访问它们

有没有更好的方法来做到这一点-也许是通过添加控制器授权?我仍然会遇到需要知道他们是否被授权的问题。有没有办法在授权失败时改变Auth组件的功能?我希望它返回404,但仅在某些条件下返回(特别是,用户未通过子域访问站点)。

您可以使用返回404错误。剩下的问题我不完全明白。您使用Auth,但使用自定义ACL?

您可以使用它返回404个错误。剩下的问题我不完全明白。您使用的是身份验证,但自定义ACL?

允许()和拒绝()仅指在不登录的情况下访问url的能力。控制器中的isAuthorized回调更适合已通过登录表单的用户的权限

请查看本教程以了解详细信息:

允许()和拒绝()仅指无需登录即可访问url的功能。控制器中的isAuthorized回调更适合已通过登录表单的用户的权限


请查看本教程以获得澄清:

感谢黑洞链接-这使事情变得更简单。而且我还没有真正使用ACL——只是一些手动权限检查/重定向。感谢blackHole链接——这让事情变得更简单。我还没有真正使用ACL——只是一些手动权限检查/重定向。是的,这就是我收集的…我基本上想要一种方法来告诉用户是否允许()访问某个页面,也就是说,他们所在的页面是否是可公开访问的页面。是的,这就是我收集的…我基本上想要一种方法来告诉用户是否允许()如果他们所在的页面是一个可公开访问的页面,那么他们可以访问该页面。