In-Place record declaration

cancel
Showing results for 
Search instead for 
Did you mean: 
mbajpai
Active Member II

In-Place record declaration

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
rwetherall
Active Member II

Re: In-Place record declaration

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

mbajpai
Active Member II

Re: In-Place record declaration

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)

mbajpai
Active Member II

Re: In-Place record declaration

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 .