Zend_auth和Zend_acl的区别?



我的一个项目正在使用Zend Framework,我对Zend Framework非常陌生。你能告诉我Aend_AuthZend_Acl之间的区别吗?

a)要进行考试,您必须随身携带带有您的卷号(密码)的考试票。没有它你就不能进入考场。所以考票认证是你们,让你们坐在考场上。(Zend_Auth)

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

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

您必须使用Zend_Auth来处理所有登录活动。请注意,Zend_Auth不允许或拒绝访问,它只是进行一些涉及登录过程的管理,如会话管理。这在操作系统中通常是一样的,但在后台,你有一个安全设置,可以访问桌面或远程。

安全最终由"访问控制列表"负责。使用Zend_Acl,您可以通过各种方式处理web应用程序的所有安全性。

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

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

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

Zend_Acl-允许一些用户访问一些页面(例如,用户管理员可以访问"管理员"控制器)

Zend-Auth用于对最终用户进行身份验证,它处理登录和会话管理,而Zend-acl则是一个不同的东西。您可以设计登录用户的角色,如管理员、经理、客户atc。我更喜欢看zend文档了解更多信息。

最新更新