Class GetAclServlet
- java.lang.Object
-
- javax.servlet.GenericServlet
-
- org.apache.sling.api.servlets.SlingSafeMethodsServlet
-
- org.apache.sling.api.servlets.SlingAllMethodsServlet
-
- org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessServlet
-
- org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessGetServlet
-
- org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractGetAclServlet
-
- org.apache.sling.jcr.jackrabbit.accessmanager.post.GetAclServlet
-
- All Implemented Interfaces:
Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
,GetAcl
public class GetAclServlet extends AbstractGetAclServlet implements GetAcl
Sling GET servlet implementation for dumping the declared ACL of a resource to JSON.
Rest Service Description
Mapped to the default resourceType. Gets and Acl for a resource. Get of the form >resource<.acl.json Provided the user has access to the ACL, they get a chunk of JSON of the form.
Transport Details:
Methods
- GET
Response
- 200
- Success.
- 404
- The resource was not found.
- 500
- Failure. HTML explains the failure.
Example Response
{ "principalNameA":{ "permissions": { "permission1":{ "allow":true }, "permission2":{ "allow":true }, "permission5":{ "deny":true } }, "principalNameB":{ "permissions": { "permission1":{ "allow":true }, "permission2":{ "allow":[ "restrictionName1: "restrictionValue1", "restrictionName2: [ "restrictionValue2a", "restrictionValue2b" ] ] }, "permission5":{ "deny":true } } }
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractGetAclServlet
KEY_DENIED, KEY_GRANTED, KEY_ORDER
-
-
Constructor Summary
Constructors Constructor Description GetAclServlet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Map<String,List<javax.jcr.security.AccessControlEntry>>
getAccessControlEntriesMap(javax.jcr.Session session, String absPath, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths)
javax.json.JsonObject
getAcl(javax.jcr.Session jcrSession, String resourcePath)
Gets the access control list for a resource.-
Methods inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractGetAclServlet
addExtraInfo, addRestrictions, addTo, addTo, convertToJson, getAccessControlEntries, internalGetAcl, internalJson
-
Methods inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessGetServlet
doGet, entriesSortedByEffectivePath, getItemPath, processACE, validateArgs, validateArgs, validateResourcePath
-
Methods inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessServlet
bindRestrictionProvider, getRestrictionProvider, unbindRestrictionProvider
-
Methods inherited from class org.apache.sling.api.servlets.SlingAllMethodsServlet
doDelete, doPost, doPut, getAllowedRequestMethods, isMethodValid, mayService
-
Methods inherited from class org.apache.sling.api.servlets.SlingSafeMethodsServlet
doGeneric, doHead, doOptions, doTrace, getServletInfo, handleMethodNotImplemented, service, service
-
-
-
-
Method Detail
-
getAcl
public javax.json.JsonObject getAcl(javax.jcr.Session jcrSession, String resourcePath) throws javax.jcr.RepositoryException
Description copied from interface:GetAcl
Gets the access control list for a resource.
-
getAccessControlEntriesMap
protected Map<String,List<javax.jcr.security.AccessControlEntry>> getAccessControlEntriesMap(javax.jcr.Session session, String absPath, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths) throws javax.jcr.RepositoryException
- Specified by:
getAccessControlEntriesMap
in classAbstractGetAclServlet
- Throws:
javax.jcr.RepositoryException
-
-