diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
index 7b3c3bace7..b4ec9ac3da 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
@@ -676,4 +676,11 @@
parent="rmBaseWebscript">
+
+
+
+
+
\ No newline at end of file
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.desc.xml b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.desc.xml
new file mode 100644
index 0000000000..60dc018fb4
--- /dev/null
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.desc.xml
@@ -0,0 +1,8 @@
+
+ Users security clearance
+ REST API to set users security clearance
+ /api/classification/clearance?username={username}&clearanceId={clearanceId}
+ argument
+ admin
+ required
+
\ No newline at end of file
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.json.ftl
new file mode 100644
index 0000000000..9be5042510
--- /dev/null
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/classification/usersecurityclearance.put.json.ftl
@@ -0,0 +1,7 @@
+<#import "usersecurityclearance.lib.ftl" as usersecurityclearance />
+
+<#escape x as jsonUtils.encodeJSONString(x)>
+{
+ "data": <@usersecurityclearance.usersecurityclearanceJSON item=item />
+}
+#escape>
\ No newline at end of file
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/classification/UserSecurityClearancePut.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/classification/UserSecurityClearancePut.java
new file mode 100644
index 0000000000..a75b7347ea
--- /dev/null
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/classification/UserSecurityClearancePut.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2005-2015 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.module.org_alfresco_module_rm.script.classification;
+
+import org.alfresco.module.org_alfresco_module_rm.classification.SecurityClearance;
+import org.alfresco.module.org_alfresco_module_rm.classification.SecurityClearanceService;
+import org.alfresco.module.org_alfresco_module_rm.script.AbstractRmWebScript;
+import org.springframework.extensions.webscripts.Cache;
+import org.springframework.extensions.webscripts.Status;
+import org.springframework.extensions.webscripts.WebScriptRequest;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Implementation for Java backed webscript to set users security clearance.
+ *
+ * @author David Webster
+ * @author Tom Page
+ * @since 3.0
+ */
+public class UserSecurityClearancePut extends AbstractRmWebScript
+{
+ /** Constants */
+ private static final String USERNAME = "username";
+ private static final String CLEARANCE_ID = "clearanceId";
+ private static final String ITEM = "item";
+
+ /** Security clearance service */
+ private SecurityClearanceService securityClearanceService;
+
+ /**
+ * @param securityClearanceService the securityClearanceService to set
+ */
+ public void setSecurityClearanceService(SecurityClearanceService securityClearanceService)
+ {
+ this.securityClearanceService = securityClearanceService;
+ }
+
+ /**
+ * @see org.springframework.extensions.webscripts.DeclarativeWebScript#executeImpl(org.springframework.extensions.webscripts.WebScriptRequest,
+ * org.springframework.extensions.webscripts.Status,
+ * org.springframework.extensions.webscripts.Cache)
+ */
+ @Override
+ protected Map executeImpl(WebScriptRequest req, Status status, Cache cache)
+ {
+ String username = req.getParameter(USERNAME);
+ String clearanceId = req.getParameter(CLEARANCE_ID);
+
+ SecurityClearance securityClearance = securityClearanceService.setUserSecurityClearance(username, clearanceId);
+
+ Map model = new HashMap<>();
+ model.put(ITEM, securityClearance);
+
+ return model;
+ }
+}