http://wiki.apache.org/jackrabbit/AccessControl里解释道, A core concept of resource-based ACLs is that they inherit the ACLs from the parent node, thus for each node, all the ACLs of its ancestor come into play as well.意思就是resource-based ACL 会从父节点继承权限并应用到所有的node。但是这里却没有说明是rep:GrantACE可以继承还是rep:DenyACE可以被继承。经过实验,应该是rep:GrantACE可以被继承,而rep:DenyACE在应用到子节点的时候会被其rep:GrantACE的属性所覆盖,而rep:GrantACE却不能够被覆盖。一旦使用,那么子节点就都具有这个权限。PS,和操作系统一样。
使用代码解释为,
JackrabbitSession session = (JackrabbitSession)loginWithAdminRepository();
Node node = session.getRootNode();
node.addNode("shmily");
node.addNode("shmily/test");
node.addNode("george");
node.addNode("george/test");
session.save();
session.logout();
session = (JackrabbitSession)loginWithShmilyRepository();
Principal p = session.getPrincipalManager().getPrincipal(session.getUserID());
removeACLForCurrentNode("/");
grantDenyAllPrevilige("/", EveryonePrincipal.getInstance());
removeACLForCurrentNode("/shmily");
grantPrevilige("/shmily", p, Privilege.JCR_READ);
session.getNode("/shmily");
session.getNode("/shmily/test");
try{
session.getNode("/george");
}catch(javax.jcr.PathNotFoundException e){
grantPrevilige("/george", p, Privilege.JCR_READ);
session.getNode("/george");
}
session.logout();
分享到:
相关推荐
3. **安全性**:通过ACL(Access Control List)机制,Jackrabbit可以精细地控制用户对内容的访问权限。 4. **查询**:提供SQL-like的查询语言(JCR-SQL2)来搜索存储库中的内容。 5. **事件监听**:可以通过注册...
- 安全性:Jackrabbit支持角色和权限的管理,可以设置访问控制列表(ACL),确保内容的安全性。 HTML文档通常会提供详细的API参考,包括类、接口、方法和属性的说明,以及示例代码,帮助开发者更好地理解和使用...
JCR是一种Java API标准,用于与内容仓库进行交互,而JackRabbit则是Apache提供的一个开源实现。 JackRabbit的API学习涵盖了多方面,从基础的环境搭建到具体的编程实践。文档中提到的API演示程序,说明了如何手动...
在给定的压缩包"jackrabbit-jcr-commons-2.5.0.zip"中,我们可以看到一个名为"streamresource.zip"的子文件,这通常暗示着它包含了与流资源(StreamResource)相关的代码或文档。 StreamResource是Jackrabbit框架中...
杰克兔(Jackrabbit)是Apache软件基金会的一个开源项目,它是一个完全实现JSR 170(Java Content Repository API,即JCR)规范的内容管理系统(CMS)内核。JCR提供了一种标准的方式来访问和管理半结构化数据,如网页...
杰克兔(Jackrabbit)是Apache软件基金会的一个项目,它是一个完全实现WebDAV协议的Java库。WebDAV是一种基于HTTP协议的协议扩展,用于用户编辑和管理存储在远程服务器上的文档。Jackrabbit提供了对WebDAV协议的...
Apache Jackrabbit 是一个开源的内容管理系统(CMS)框架,它实现了Java Content Repository (JCR) API。JCR API 是一种标准接口,允许应用程序访问和管理结构化内容存储库,类似于文件系统,但支持更丰富的数据类型...
Apache Jackrabbit 2.6 是一个开放源代码的、基于Java的内容管理系统(CMS),它实现了JCR(Java Content Repository)规范,提供了一种用于存储、管理和检索非结构化数据的标准接口。Jackrabbit 提供了一个高性能、...
Jackrabbit仓库是一个持久化的、基于文件系统的数据存储结构,可以被视为一个内容数据库。 描述中的“博文链接:https://kinglord2010.iteye.com/blog/665530”指向了一篇博客文章,遗憾的是,由于无法直接访问该...
Jackrabbit 是一个完全用 Java 编写的 JCR(Java Content Repository)实现,它可以作为一个独立的服务运行,也可以嵌入到更大的应用程序中。它提供了一种灵活的方式来存储、检索和管理内容。在项目实施过程中,尤其...
Apache Jackrabbit是一个开源的、实现了Java Content Repository (JCR) API的内容管理系统,它允许开发者创建、管理和查询结构化和非结构化的数据。JCR是Java社区制定的一个标准,旨在为各种应用程序提供统一的数据...
Apache Jackrabbit 是一个开源的Java Content Repository (JCR)实现,它是Content Management Systems (CMS)的核心技术之一。JCR是Java Specification Request (JSR) 170和JSR 283定义的标准,旨在提供一个统一的...
标题中的"jackrabbit-webdav-2.7.1.zip"指的是Apache Jackrabbit的一个特定版本——2.7.1的WebDAV模块的压缩包。Apache Jackrabbit是Java内容存储库(Content Repository)的一个实现,它遵循JCR(Java Content ...
Jackrabbit Oak 是一种可扩展的高性能分层内容 专为现代世界级基础而设计的存储库 网站和其他要求苛刻的内容应用程序。Oak 工作是 Apache Jackrabbit 项目的一部分。 Apache Jackrabbit 是 Apache 软件基金会的一个...
jackrabbit-webdav-2.1.0.jar 具体用法可以网上查找
jackrabbit 1.5.6 jar
这款开源软件解决方案是Apache Jackrabbit项目的一部分,它基于JCR(Java Content Repository)规范,提供了一种高效、安全的方式来存储和管理大量结构化和非结构化数据。 在深入了解Jackrabbit Oak之前,我们需要...
jackrabbit-standalone-1.6.5.jar是webDav的支持jar包。
【标题】"jackrabbit-core-2.7.2.zip" 是一个包含Apache Jackrabbit Core库的压缩文件。Apache Jackrabbit是基于Java的内容管理系统(CMS)实现,它专注于内容存储和检索,符合Java Content Repository(JCR)API...