diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/extended-repository-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/extended-repository-context.xml
index 8c04b29c38..74618744d2 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/extended-repository-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/extended-repository-context.xml
@@ -250,5 +250,23 @@
+
+
+
+ search
+
+
+
+
+
+
+
+
+
+
+
+ ${spaces.store}
+
+
\ No newline at end of file
diff --git a/rm-server/source/java/org/alfresco/repo/jscript/ExtendedSearch.java b/rm-server/source/java/org/alfresco/repo/jscript/ExtendedSearch.java
new file mode 100644
index 0000000000..60d0764315
--- /dev/null
+++ b/rm-server/source/java/org/alfresco/repo/jscript/ExtendedSearch.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2005-2013 Alfresco Software Limited.
+ *
+ * This file is part of Alfresco
+ *
+ * Alfresco is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Alfresco is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Alfresco. If not, see .
+ */
+package org.alfresco.repo.jscript;
+
+import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel;
+import org.alfresco.service.cmr.repository.NodeRef;
+import org.alfresco.service.cmr.security.AccessStatus;
+import org.alfresco.service.cmr.security.PermissionService;
+import org.alfresco.util.ParameterCheck;
+
+/**
+ * Extended jscript search implementation.
+ *
+ * @author Roy Wetherall
+ * @since 2.1
+ */
+public class ExtendedSearch extends Search
+{
+ /**
+ * Extended to take into account record read permission check.
+ *
+ * @see org.alfresco.repo.jscript.Search#findNode(org.alfresco.service.cmr.repository.NodeRef)
+ */
+ @Override
+ public ScriptNode findNode(NodeRef ref)
+ {
+ ParameterCheck.mandatory("ref", ref);
+ if (this.services.getNodeService().exists(ref) &&
+ (this.services.getPermissionService().hasPermission(ref, PermissionService.READ) == AccessStatus.ALLOWED ||
+ this.services.getPermissionService().hasPermission(ref, RMPermissionModel.READ_RECORDS) == AccessStatus.ALLOWED))
+ {
+ return new ScriptNode(ref, this.services, getScope());
+ }
+ return null;
+ }
+
+}