cancel
Showing results for 
Search instead for 
Did you mean: 

In-Place record declaration

mbajpai
Confirmed Champ
Confirmed Champ

I want to declare an in-place record in alfresco . I created a rule on a folder to declare any incoming document as record , it works fine . But I am not able to do so via this call -

http://hostname:8080/alfresco/service/api/rma/actions/ExecutionQueue 

Request body is - 

{
"name":"declareRecord",
"nodeRef":"workspace://SpacesStore/f0053412-1e7c-4e30-b783-f30001624177"
}

I get an error as " Access Denied.  You do not have the appropriate permissions to perform this operation " .

I am using postman to hit the alfresco endpoint . 

The user is admin and is a member of RECORD_CONTRIBUTORS group .

We are using RM 2.5 , Alfresco 5.1.1

My question is does RM module has other restrictions which I am missing here ?

Any insight into this will be much appreciated 

3 REPLIES 3

rwetherall
Confirmed Champ
Confirmed Champ

Hi,

So that call should work.

Can I conform that you have already created the RM site?

Also, can you check the log and post anything that you think might be relevant here.

Thanks

Roy

Yes . RM site is already there. I created a rule on a folder that declares the document as record when any document is uploaded in that folder .That means the user is able to declare a document as record . But from the same authentication I can not declare as record by the POST call .I am attaching the relevant logs . The error is "Access Denied ".

2017-04-12 19:28:12,681 ERROR [extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-10] Exception from executeScript - redirecting to status template error: 03120018 Wrapped Exception (with status template): 03120465 Access Denied. You do not have the appropriate permissions to perform this operation.
org.springframework.extensions.webscripts.WebScriptException: 03120018 Wrapped Exception (with status template): 03120465 Access Denied. You do not have the appropriate permissions to perform this operation.


Caused by: org.alfresco.repo.security.permissions.AccessDeniedException: 03120465 Access Denied. You do not have the appropriate permissions to perform this operation.
at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:57)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy139.executeRecordsManagementAction(Unknown Source)
at org.alfresco.module.org_alfresco_module_rm.script.RmActionPost.executeImpl(RmActionPost.java:211)
at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:64)
... 37 more
Caused by: net.sf.acegisecurity.AccessDeniedException: Access is denied.
RM method security check was performed.
Failed on method: execute(workspace://SpacesStore/32b622f0-724c-4171-9d34-9f188f5edc0b, {})
; nested exception is net.sf.acegisecurity.AccessDeniedException: Access is denied.
at org.alfresco.module.org_alfresco_module_rm.security.RMMethodSecurityInterceptor.beforeInvocation(RMMethodSecurityInterceptor.java:325)
at org.alfresco.module.org_alfresco_module_rm.security.RMMethodSecurityInterceptor.invoke(RMMethodSecurityInterceptor.java:348)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy211.execute(Unknown Source)
at org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionServiceImpl.executeRecordsManagementAction(RecordsManagementActionServiceImpl.java:290)
at org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionServiceImpl.executeRecordsManagementAction(RecordsManagementActionServiceImpl.java:331)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

Also , in the documents Records Management global properties settings | Alfresco Documentation 

it is explained that -

rm.record.contributors.group.enabled .

Set which groups can perform Records Management actions; for example, Declare as Record. Default is false.

If this is set to true, only members of the RECORD_CONTRIBUTORS group can perform these actions.

The admin user in my case is a member of RECORD CONTRIBUTORS group. I am not setting this or any property in the alfresco-global.properties file .