Zend_auth与...之间的区别Zend_Acl里?

时间:2012-07-14 11:57:24

标签: zend-framework authentication authorization zend-auth zend-acl

我在我的一个项目中使用Zend Framework,而且我是Zend Framework的新手。 你能告诉我Aend_AuthZend_Acl之间的区别吗?

5 个答案:

答案 0 :(得分:2)

a)要参加考试,您必须随身携带考试券,并附上您的考试卷号(密码)。没有它你就无法进入考场​​。所以考试券验证了你,让你坐在考场。 (Zend_Auth的)

b)在考试期间,您无权打开书本,向朋友寻求帮助或使用手机,但可以使用水瓶喝水。这些基本上是强制执行的规则。 (在Zend中,这些规则是使用Zend_Acl编写的)

答案 1 :(得分:1)

如果您查看操作系统,您可以登录,还可以使用简单目录或文件安全性(读/写/执行)等安全功能。

您必须使用Zend_Auth来处理所有登录活动。请注意,虽然Zend_Auth不允许或拒绝访问,但它仅涉及一些涉及会话管理等登录过程的管理。这在操作系统中通常是相同的,但在引擎盖下,您有一个安全设置,可以授予您访问桌面或远程的权限。

安全性最终是“访问控制列表”的责任。使用Zend_Acl,您可以通过各种方式处理Web应用程序的所有安全性。

答案 2 :(得分:1)

您应首先区分身份验证授权。身份验证正在检查凭据(例如用户名和密码)是否有效。授权是检查用户的角色(例如管理员或用户)。授权在验证后完成。 Zend_Auth是身份验证过程。 Zend_Acl是授权过程。

请参阅:http://en.wikipedia.org/wiki/AAA_protocol

答案 3 :(得分:0)

Zend_Auth - 检查存储在数据库中的登录名和密码,并将用户数据保存在会话/注册表

Zend_Acl - 允许一些用户访问某些页面(例如,用户admin可以访问'admin'控制器)

答案 4 :(得分:-1)

Zend Auth用于验证最终用户,它处理登录和会话管理,而zend acl是一个不同的东西。您可以在管理员,经理,客户atc等用户中确定loged的角色。我更愿意看到zend文档以获取更多信息。