bug4479 added permissions check

This commit is contained in:
Kai Börnert committed 2018-07-03 10:46:38 +02:00
1 parent e8bcede1c9
commit 62f23b15f8
1 file changed
+5
@@ -6,6 +6,7 @@ import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import org.apache.shiro.SecurityUtils;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
@@ -16,6 +17,8 @@ import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.common.WindSource;
import com.sap.sailing.domain.common.WindSourceType;
import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID;
import com.sap.sailing.domain.common.security.Permission;
import com.sap.sailing.domain.common.security.Permission.Mode;
import com.sap.sailing.domain.tracking.DynamicTrackedRace;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializationException;
import com.sap.sailing.server.gateway.deserialization.JsonDeserializer;
@@ -32,6 +35,8 @@ public class WindResource extends AbstractSailingServerResource {
@Consumes(MediaType.APPLICATION_JSON)
@Path("putWind")
public Response putWind(String json) throws ParseException, JsonDeserializationException {
SecurityUtils.getSubject().checkPermission(Permission.EVENT.getStringPermission(Mode.UPDATE));
Object requestBody = JSONValue.parseWithException(json);
JSONObject requestObject = Helpers.toJSONObjectSafe(requestBody);
JSONArray windDatas = (JSONArray) requestObject.get("windData");