From 5f7371d1f74d67cbabd6478ae887d8ffe7e10765 Mon Sep 17 00:00:00 2001
From: Sinisa Veseli <sveseli@aps.anl.gov>
Date: Wed, 15 Apr 2015 13:18:18 +0000
Subject: [PATCH] modified role requirement for exposed methods

---
 .../ds_web_service/service/authSessionController.py  |  2 +-
 .../service/experimentSessionController.py           | 12 ++++++------
 .../service/userInfoSessionController.py             |  6 +++---
 3 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/python/dm/ds_web_service/service/authSessionController.py b/src/python/dm/ds_web_service/service/authSessionController.py
index 6582f742..f33255a8 100755
--- a/src/python/dm/ds_web_service/service/authSessionController.py
+++ b/src/python/dm/ds_web_service/service/authSessionController.py
@@ -11,7 +11,7 @@ class AuthSessionController(DmSessionController):
         self.authSessionControllerImpl = AuthSessionControllerImpl()
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getAuthorizationPrincipal(self, username, **kwargs):
         if not len(username):
diff --git a/src/python/dm/ds_web_service/service/experimentSessionController.py b/src/python/dm/ds_web_service/service/experimentSessionController.py
index c9c583b2..2fbf98ac 100755
--- a/src/python/dm/ds_web_service/service/experimentSessionController.py
+++ b/src/python/dm/ds_web_service/service/experimentSessionController.py
@@ -22,13 +22,13 @@ class ExperimentSessionController(DmSessionController):
         return self.listToJson(self.experimentSessionControllerImpl.getExperimentTypes())
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getExperiments(self, **kwargs):
         return self.listToJson(self.experimentSessionControllerImpl.getExperiments())
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getExperimentByName(self, name, **kwargs):
         response = self.experimentSessionControllerImpl.getExperimentByName(name).getFullJsonRep()
@@ -36,7 +36,7 @@ class ExperimentSessionController(DmSessionController):
         return response
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getExperimentById(self, id, **kwargs):
         response = self.experimentSessionControllerImpl.getExperimentByid(id).getFullJsonRep()
@@ -44,7 +44,7 @@ class ExperimentSessionController(DmSessionController):
         return response
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def addExperiment(self, **kwargs):
         name = kwargs.get('name')
@@ -62,7 +62,7 @@ class ExperimentSessionController(DmSessionController):
         return response
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def startExperiment(self, **kwargs):
         name = kwargs.get('name')
@@ -74,7 +74,7 @@ class ExperimentSessionController(DmSessionController):
         return response
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def stopExperiment(self, **kwargs):
         name = kwargs.get('name')
diff --git a/src/python/dm/ds_web_service/service/userInfoSessionController.py b/src/python/dm/ds_web_service/service/userInfoSessionController.py
index 984e5ba7..14e1d5e0 100755
--- a/src/python/dm/ds_web_service/service/userInfoSessionController.py
+++ b/src/python/dm/ds_web_service/service/userInfoSessionController.py
@@ -11,13 +11,13 @@ class UserInfoSessionController(DmSessionController):
         self.userInfoSessionControllerImpl = UserInfoSessionControllerImpl()
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getUsers(self, **kwargs):
         return self.listToJson(self.userInfoSessionControllerImpl.getUsers())
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getUserById(self, id, **kwargs):
         if not id:
@@ -27,7 +27,7 @@ class UserInfoSessionController(DmSessionController):
         return response
 
     @cherrypy.expose
-    @DmSessionController.require(DmSessionController.isLoggedIn())
+    @DmSessionController.require(DmSessionController.isAdministrator())
     @DmSessionController.execute
     def getUserByUsername(self, username, **kwargs):
         if not len(username):
-- 
GitLab