diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/aspect/RecordAspect.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/aspect/RecordAspect.java index 16bf1078d1..41cfd0440b 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/aspect/RecordAspect.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/aspect/RecordAspect.java @@ -159,8 +159,17 @@ public class RecordAspect extends AbstractDisposableItem // Deal with versioned records if (reference.equals(CUSTOM_REF_VERSIONS)) { - // Apply the versioned aspect to the from node - nodeService.addAspect(fromNodeRef, ASPECT_VERSIONED_RECORD, null); + // run as system, to apply the versioned aspect to the from node + // as we can't be sure if the user has add aspect rights + authenticationUtil.runAsSystem(new RunAsWork() + { + @Override + public Void doWork() throws Exception + { + nodeService.addAspect(fromNodeRef, ASPECT_VERSIONED_RECORD, null); + return null; + } + }); } // Execute script if for the reference event