我在我的一个项目中使用Zend Framework,而且我是Zend Framework的新手。
你能告诉我Aend_Auth
和Zend_Acl
之间的区别吗?
答案 0 :(得分:2)
a)要参加考试,您必须随身携带考试券,并附上您的考试卷号(密码)。没有它你就无法进入考场。所以考试券验证了你,让你坐在考场。 (Zend_Auth的)
b)在考试期间,您无权打开书本,向朋友寻求帮助或使用手机,但可以使用水瓶喝水。这些基本上是强制执行的规则。 (在Zend中,这些规则是使用Zend_Acl编写的)答案 1 :(得分:1)
如果您查看操作系统,您可以登录,还可以使用简单目录或文件安全性(读/写/执行)等安全功能。
您必须使用Zend_Auth来处理所有登录活动。请注意,虽然Zend_Auth不允许或拒绝访问,但它仅涉及一些涉及会话管理等登录过程的管理。这在操作系统中通常是相同的,但在引擎盖下,您有一个安全设置,可以授予您访问桌面或远程的权限。
安全性最终是“访问控制列表”的责任。使用Zend_Acl,您可以通过各种方式处理Web应用程序的所有安全性。
答案 2 :(得分:1)
您应首先区分身份验证和授权。身份验证正在检查凭据(例如用户名和密码)是否有效。授权是检查用户的角色(例如管理员或用户)。授权在验证后完成。 Zend_Auth是身份验证过程。 Zend_Acl是授权过程。
答案 3 :(得分:0)
Zend_Auth - 检查存储在数据库中的登录名和密码,并将用户数据保存在会话/注册表
中Zend_Acl - 允许一些用户访问某些页面(例如,用户admin可以访问'admin'控制器)
答案 4 :(得分:-1)
Zend Auth用于验证最终用户,它处理登录和会话管理,而zend acl是一个不同的东西。您可以在管理员,经理,客户atc等用户中确定loged的角色。我更愿意看到zend文档以获取更多信息。