rsanchez
2014-10-15 7686a892d556333194349f73fee3a268b6202d66
securis/src/main/java/net/curisit/securis/services/ApplicationResource.java
....@@ -4,6 +4,7 @@
44 import java.util.List;
55 import java.util.Set;
66
7
+import javax.annotation.security.RolesAllowed;
78 import javax.inject.Inject;
89 import javax.inject.Provider;
910 import javax.persistence.EntityManager;
....@@ -27,6 +28,8 @@
2728 import net.curisit.securis.DefaultExceptionHandler;
2829 import net.curisit.securis.db.Application;
2930 import net.curisit.securis.db.ApplicationMetadata;
31
+import net.curisit.securis.security.BasicSecurityContext;
32
+import net.curisit.securis.security.Securable;
3033 import net.curisit.securis.utils.TokenHelper;
3134
3235 import org.apache.logging.log4j.LogManager;
....@@ -63,6 +66,7 @@
6366 @Produces({
6467 MediaType.APPLICATION_JSON
6568 })
69
+ @Securable
6670 public Response index() {
6771 LOG.info("Getting applications list ");
6872
....@@ -82,6 +86,7 @@
8286 @Produces({
8387 MediaType.APPLICATION_JSON
8488 })
89
+ @Securable
8590 public Response get(@PathParam("appid") String appid, @HeaderParam(TokenHelper.TOKEN_HEADER_PÀRAM) String token) {
8691 LOG.info("Getting application data for id: {}: ", appid);
8792 if (appid == null || "".equals(appid)) {
....@@ -107,6 +112,8 @@
107112 MediaType.APPLICATION_JSON
108113 })
109114 @Transactional
115
+ @Securable
116
+ @RolesAllowed(BasicSecurityContext.ROL_ADMIN)
110117 public Response create(Application app, @HeaderParam(TokenHelper.TOKEN_HEADER_PÀRAM) String token) {
111118 LOG.info("Creating new application");
112119 EntityManager em = emProvider.get();
....@@ -132,6 +139,8 @@
132139 @Produces({
133140 MediaType.APPLICATION_JSON
134141 })
142
+ @Securable
143
+ @RolesAllowed(BasicSecurityContext.ROL_ADMIN)
135144 public Response modify(Application app, @PathParam("appid") String appid, @HeaderParam(TokenHelper.TOKEN_HEADER_PÀRAM) String token) {
136145 LOG.info("Modifying application with id: {}", appid);
137146 EntityManager em = emProvider.get();
....@@ -170,6 +179,8 @@
170179 @Produces({
171180 MediaType.APPLICATION_JSON
172181 })
182
+ @Securable
183
+ @RolesAllowed(BasicSecurityContext.ROL_ADMIN)
173184 public Response delete(@PathParam("appid") String appid, @Context HttpServletRequest request) {
174185 LOG.info("Deleting app with id: {}", appid);
175186 EntityManager em = emProvider.get();