`

acegi-security-sample-contacts-filter例子学习(一)

    博客分类:
  • java
 
阅读更多
这是一个Acegi官方的例子。它以联系人的管理为例子,说明如何使用Acegi作权限控制。这个例子包含在acegi的包里面。下载地址:http://prdownloads.sourceforge.net/acegisecurity/acegi-security-0.8.3.zip?download

联系人管理说明了下列中心的Acegi安全控制能力:

  • Role-based security(基于角色的安全)――每个责任人都是某个角色的一员。而角色被用来限制对某些安全对象的访问。
  • Domain object instance security(域对象实例安全)――合同,这个系统里的主要域对象,拥有一个访问控制列表(ACL),用来指明谁允许读、管理和删除对象。
  • Method invocation security(方法调用安全)――这个 ContactManager服务层对象 包含一些受保护的和公开的方法。
  • Web request securityWeb请求安全)――这个“/secureURI路径被使用Acegi安全保护,使得没有ROLE_USER 角色的用户无法访问。.
  • Security unaware application objects(保护未知的应用对象)――受保护的对象与Acegi之间没有明显的耦合或契约,所以它们没有察觉到安全是由Acegi 提供的。*
  • Security taglib usage(安全标签库使用)――所有的JSP使用Acegi 安全标签库来封装安全信息。*
  • Fully declarative security(完全声明式的安全)――每一个安全方面特性都是在application context里面使用标准的Acegi安全对象来配置的。 *
  • Database-sourced security data(支持数据库来源的安全数据)――所有的用户、角色和ACL信息都可以从一个兼容JDBC的内存数据库获得。
  • Integrated form-based and BASIC authentication(集成基于表单和BASIC验证)―― 任何BASIC验证头部被检测以及作为验证使用。默认使用基于表单的普通交互式验证。
  • Remember-me services(记住我的服务)―― Acegi安全的插件式的“remember-me 策略被演示。在登录表单里有一个相关的选择框与之对应。

 

联系人管理的业务功能描述:

1. 1. 每个用户登录后,可以看到一个联系人列表。例如,

marissa's Contacts

 

id

Name

Email

1

John Smith

john@somewhere.com

Del

Admin Permission

2

Michael Citizen

michael@xyz.com

 

 

3

Joe Bloggs

joe@demo.com

Del

 

4

Karen Sutherland

karen@sutherland.com

Del

Admin Permission

Add

说明:用户没有权限访问的联系人信息,将不会显示。

2. 2. 用户可以增加新的联系人信息。

3. 3. 如果有删除权限,用户可以看到在联系人后面有一个“Del”链接。用户可以点击这个链接来删除某个联系人信息。

4. 4. 如果有管理权限,用户可以看到在联系人后面有一个“Admin Permission”链接。用户可以点击这个链接来管理访问这个联系人的权限。例如,

Administer Permissions

sample.contact.Contact@26807f: Id: 1; Name: John Smith; Email: john@somewhere.com

 

-R--- [2] dianne

Del

-RW-D [22] peter

Del

A---- [1] marissa

Del

Add Permission Manage

说明:每一行记录包含有3列。

第一列表示权限,例如,“-RW-D”表示可读、可写、可删除。

第二列也表示权限,但它是以类似unix权限的数字表达。例如,“[22], 表示可读、可写、可删除。

第三列是用户名称。

每一行记录后面都有一个“Del”链接。点击这个链接,可以删除掉指定用户对这个联系人信息的权限。

5. 5. 用户可以为某个联系人信息添加权限。例如,

Add Permission

 

Contact:

sample.contact.Contact@1787005: Id: 1; Name: John Smith; Email: john@somewhere.com

 

Recipient:

-- please select -- dianne marissa peter scott ROLE_SUPERVISOR ROLE_USER

 

Permission:

None Administer Read Delete Read+Write+Delete

 

说明:权限是动态添加的。例如,上图中给用户scott增加了读联系人John的权限。那么scott马上就可以看到联系人John的信息了。
分享到:
评论

相关推荐

    acegi-security-tiger-1.0.0-RC2.jar.zip

    这个"acegi-security-tiger-1.0.0-RC2.jar.zip"压缩包包含的是Acegi Security的一个早期版本——1.0.0 Release Candidate 2(RC2),专门针对Tiger(Java SE 5.0)版本的Java开发环境。 Acegi Security的主要功能...

    acegi-security 1.0.2

    acegi-security 1.0.2.jar

    acegi-security-0.8.3

    acegi-security-0.8.3驱动程序

    acegi-security-sample-contacts-filter.war

    acegi-security-sample-contacts-filter.war

    acegi-security-sample-contacts-ldap.war

    acegi-security-sample-contacts-ldap.war acegi-security-sample-contacts

    acegi-security-cas-1.0.7.jar

    Acegi是一个专门为SpringFramework提供安全机制的项目,全称为Acegi Security System for Spring.

    acegi-security-1.0.7.jar.zip

    这个"acegi-security-1.0.7.jar.zip"文件包含的是Acegi Security 1.0.7版本的库,它是一个压缩的Java Archive(JAR)文件,专门设计用于增强Spring框架的安全功能。 Acegi Security的核心功能包括身份验证、授权和...

    acegi-security-1.0.7.jar

    acegi-security-1.0.7.jar

    acegi-security-1.0.4.jar

    acegi-security-1.0.4.jar

    acegi-security-0.6.1.jar.zip

    这个"acegi-security-0.6.1.jar.zip"文件包含的是Acegi Security 0.6.1版本的库,以及相关的许可证信息。 Acegi Security的核心功能在于提供了一套全面的身份验证和授权机制,它允许开发者为Web应用程序添加细粒度...

    acegi-security-0.8.1.1.jar.zip

    总的来说,"acegi-security-0.8.1.1.jar.zip"是一个关键的安全组件,对于那些需要在Spring环境下实现复杂安全策略的开发者来说,它提供了强大的工具和基础。尽管Acegi Security已经被Spring Security替代,但对于...

    acegi-security-1.0.7-sources

    acegi-security-1.0.7-sources jar 包

    acegi-security-sample-contacts-x509.war

    acegi-security-sample-contacts-x509.war

    acegi-security-sample-contacts-cas.war

    acegi-security-sample-contacts-cas.war security 中 与 cas 整合的一个例子 但具体的还没看

    acegi-security-1.0.4.jar.zip

    `acegi-security--license.txt` 文件通常包含软件的许可协议信息,对于Acegi Security 1.0.4来说,这可能是Apache License Version 2.0,这是一个广泛使用的开源软件许可证,允许自由地使用、修改和分发软件,但要求...

    acegi-security-0.8.3.jar.zip

    总的来说,`acegi-security-0.8.3.jar.zip` 提供了一个早期的Java安全解决方案,对于学习和理解基于Spring的安全架构历史及其发展具有重要意义。在当前的开发环境中,虽然我们更多地转向Spring Security,但理解...

    acegi-security-1.0.5.jar

    acegi-security-1.0.5.jar java权限控制应用包下载

    acegi-security-jetty-0.8.3.jar.zip

    "acegi-security-jetty-0.8.3.jar.zip"文件是Acegi Security与Jetty服务器特定版本(0.8.3)的集成包,它包含了Acegi Security的jar文件以及相关的许可证信息。 Acegi Security的主要功能包括: 1. **身份验证**:...

    acegisecurity内所有jar包

    包含acegi-security-1.0.7....acegi-security-samples-contacts-1.0.7-sources.jar,acegi-security-samples-tutorial-1.0.7-sources.jar,acegi-security-tiger-1.0.7.jar,acegi-security-tiger-1.0.7-sources.jar等jar

    Acegi-security-samples-tutorial-1.0.7.zip 实例代码解析

    总的来说," Acegi-security-samples-tutorial-1.0.7.zip "是一个宝贵的教育资源,它通过实际的代码示例帮助我们学习和掌握Acegi Security这一强大的安全框架。通过深入研究和实践,开发者可以有效地提升其在Java ...

Global site tag (gtag.js) - Google Analytics