diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java
index ee5dfd2b194702d51464a72f7d16537ed72c7e29..41b26a7ef9715f951922ae7dbfb9010a54819ea3 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java
@@ -26,7 +26,7 @@ import lcsb.mapviewer.services.view.AuthenticationToken;
 
 @Transactional(value = "txManager")
 public class UserRestImpl extends BaseRestImpl {
-	Logger logger = Logger.getLogger(UserRestImpl.class);
+	Logger								 logger	= Logger.getLogger(UserRestImpl.class);
 
 	@Autowired
 	private ILayoutService layoutService;
@@ -184,25 +184,21 @@ public class UserRestImpl extends BaseRestImpl {
 				Object value = privilegesData.get(key);
 
 				PrivilegeType type = PrivilegeType.valueOf(key);
-				Integer objectId = null;
-				Object privilegeToSet = null;
+
 				if (type.getPrivilegeClassType().equals(BasicPrivilege.class)) {
-					privilegeToSet = value;
+					getUserService().setUserPrivilege(modifiedUser, type, value, authenticationToken);
 				} else if (type.getPrivilegeClassType().equals(ObjectPrivilege.class)) {
 					if (value instanceof Map) {
-						privilegeToSet = ((Map<?, ?>) value).get(value);
-						objectId = (Integer) ((Map<?, ?>) value).get(objectId);
+						Map<?, ?> objects = (Map<?, ?>) value;
+						for (Object objectId : objects.keySet()) {
+							getUserService().setUserPrivilege(modifiedUser, type, objects.get(objectId), Integer.valueOf((String) objectId), authenticationToken);
+						}
 					} else {
 						throw new QueryException("Invalid value for privilege: " + key);
 					}
 				} else {
 					throw new QueryException("Unknown privilege type: " + key);
 				}
-				if (objectId == null) {
-					getUserService().setUserPrivilege(modifiedUser, type, privilegeToSet, authenticationToken);
-				} else {
-					getUserService().setUserPrivilege(modifiedUser, type, privilegeToSet, objectId, authenticationToken);
-				}
 
 			}
 			return getUser(token, login, "");