diff --git a/pom.xml b/pom.xml index 83e6fd5..d112dc3 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,7 @@ eu.dnetlib uoa-admin-tools-library - 1.0.7 + 1.0.8 eu.dnetlib diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/CategoryController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/CategoryController.java index 5517b08..d2f0d23 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/CategoryController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/CategoryController.java @@ -77,9 +77,7 @@ public class CategoryController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if(stakeholder != null) { - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Save Category: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -236,9 +234,7 @@ public class CategoryController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if(stakeholder != null) { - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete category: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -250,7 +246,7 @@ public class CategoryController { Category category = categoryDAO.findById(categoryId); if(category != null) { - if(category.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(category.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete category: You are not authorized to delete a default Category in stakeholder with id: "+stakeholderId); } @@ -460,9 +456,7 @@ public class CategoryController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if (stakeholder != null) { - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Toggle category: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -525,9 +519,7 @@ public class CategoryController { // EXCEPTION - Stakeholder not found throw new EntityNotFoundException("checkForExceptions category: Stakeholder with id: " + stakeholderId + " not found"); } - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("checkForExceptions category: You are not authorized to update stakeholder with id: "+stakeholderId); } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/IndicatorController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/IndicatorController.java index 74c223e..9a9d5ae 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/IndicatorController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/IndicatorController.java @@ -65,7 +65,7 @@ public class IndicatorController { createSectionsAndSaveBulk(date, sections, stakeholder, topicId, categoryId, subcategoryId); // createSectionAndSaveBulk(date, "number", "Numbers imported from file", number_indicators, stakeholder, topicId, categoryId, subcategoryId); - return stakeholderController.setFullEntities(stakeholder, rolesUtils.getRoles()); + return stakeholderController.setFullEntities(stakeholder); } private void createSectionsAndSaveBulk(Date date, List> old_sections, @@ -564,8 +564,7 @@ public class IndicatorController { Section section = checkForExceptions(stakeholderId, topicId, categoryId, subcategoryId, sectionId, indicator.getType()); Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); - List roles = rolesUtils.getRoles(); - if(indicator.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(indicator.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete indicator: You are not authorized to delete a default Indicator in stakeholder with id: "+stakeholderId); } @@ -879,9 +878,7 @@ public class IndicatorController { // EXCEPTION - Stakeholder not found throw new EntityNotFoundException("Save indicator: Stakeholder with id: " + stakeholderId + " not found"); } - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("CheckForExceptions Indicator: You are not authorized to update stakeholder with id: "+stakeholderId); } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SectionController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SectionController.java index 6599231..a7506ee 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SectionController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SectionController.java @@ -237,8 +237,7 @@ public class SectionController { SubCategory subCategory = checkForExceptions(stakeholderId, topicId, categoryId, subcategoryId); Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); - List roles = rolesUtils.getRoles(); - if(section.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(section.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete section: You are not authorized to delete a default Section in stakeholder with id: "+stakeholderId); } @@ -442,9 +441,7 @@ public class SectionController { // EXCEPTION - Stakeholder not found throw new EntityNotFoundException("Save indicator: Stakeholder with id: " + stakeholderId + " not found"); } - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("CheckForExceptions Section: You are not authorized to update stakeholder with id: "+stakeholderId); } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/StakeholderController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/StakeholderController.java index b595ce3..7fc188f 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/StakeholderController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/StakeholderController.java @@ -112,7 +112,7 @@ public class StakeholderController { //return null; } - public Stakeholder setFullEntities(Stakeholder stakeholder, List roles) { + public Stakeholder setFullEntities(Stakeholder stakeholder) { boolean addAll = false; boolean addPublicAndRestricted = false; @@ -120,7 +120,7 @@ public class StakeholderController { // || roles.contains(authorizationService.PORTAL_ADMIN) // || roles.contains(authorizationService.curator(stakeholder.getType())) // || roles.contains(authorizationService.manager(stakeholder.getType(), stakeholder.getAlias()))) { - if(rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { //if(visibility == null || visibility == (Visibility.PRIVATE)) { addAll = true; //} @@ -128,7 +128,7 @@ public class StakeholderController { addPublicAndRestricted = true; //} // } else if(roles != null && roles.contains(authorizationService.member(stakeholder.getType(), stakeholder.getAlias()))) { - } else if(rolesUtils.isMember(roles, stakeholder.getType(), stakeholder.getAlias())) { + } else if(rolesUtils.isMember(stakeholder.getType(), stakeholder.getAlias())) { //if(visibility == null || visibility == (Visibility.PRIVATE) || visibility == (Visibility.RESTRICTED)) { addPublicAndRestricted = true; //} @@ -297,8 +297,7 @@ public class StakeholderController { List stakeholdersFull = new ArrayList<>(); for(Stakeholder stakeholder : stakeholders) { - List roles = rolesUtils.getRoles(); - stakeholdersFull.add(this.setFullEntities(stakeholder, roles)); + stakeholdersFull.add(this.setFullEntities(stakeholder)); } return stakeholdersFull; @@ -320,14 +319,13 @@ public class StakeholderController { // Remove stakeholders for which i do not have authority if(stakeholders != null && stakeholders.size() > 0) { - List roles = rolesUtils.getRoles(); // log.debug("ROLES: "); // roles.forEach(role -> log.debug(role)); // // if (roles.contains(authorizationService.PORTAL_ADMIN)) { - if (rolesUtils.isPortalAdmin(roles)) { + if (rolesUtils.isPortalAdmin()) { for(Stakeholder stakeholder : stakeholders) { - stakeholdersFull.add(this.setFullEntities(stakeholder, roles)); + stakeholdersFull.add(this.setFullEntities(stakeholder)); } return stakeholdersFull; } @@ -337,8 +335,8 @@ public class StakeholderController { Stakeholder stakeholder = stakeholderIterator.next(); // if(roles.contains(authorizationService.curator(stakeholder.getType()))) { - if(rolesUtils.isCurator(roles, stakeholder.getType())) { - stakeholdersFull.add(this.setFullEntities(stakeholder, roles)); + if(rolesUtils.isCurator(stakeholder.getType())) { + stakeholdersFull.add(this.setFullEntities(stakeholder)); continue; } stakeholderIterator.remove(); @@ -368,10 +366,8 @@ public class StakeholderController { if(stakeholders != null && stakeholders.size() > 0) { // List roles = authorizationService.getRoles(); - List roles = rolesUtils.getRoles(); - // if (roles.contains(authorizationService.PORTAL_ADMIN)) { - if (rolesUtils.isPortalAdmin(roles)) { + if (rolesUtils.isPortalAdmin()) { // for(Stakeholder stakeholder : stakeholders) { // stakeholdersFull.add(this.setFullEntities(stakeholder)); // } @@ -387,8 +383,8 @@ public class StakeholderController { // || roles.contains(authorizationService.manager(stakeholder.getType(), stakeholder.getAlias())) // || stakeholder.getVisibility() == Visibility.PUBLIC // || (stakeholder.getVisibility() == Visibility.RESTRICTED && roles.contains(authorizationService.member(stakeholder.getType(), stakeholder.getAlias())))) { - if(rolesUtils.isCurator(roles, stakeholder.getType()) - || rolesUtils.isManager(roles, stakeholder.getType(), stakeholder.getAlias()) + if(rolesUtils.isCurator(stakeholder.getType()) + || rolesUtils.isManager(stakeholder.getType(), stakeholder.getAlias()) || stakeholder.getVisibility() == Visibility.PUBLIC || stakeholder.getVisibility() == Visibility.RESTRICTED) { // || (stakeholder.getVisibility() == Visibility.RESTRICTED && rolesUtils.isMember(roles, stakeholder.getType(), stakeholder.getAlias()))) { @@ -420,13 +416,8 @@ public class StakeholderController { List stakeholdersFull = new ArrayList<>(); if(stakeholders != null && stakeholders.size() > 0) { -// List roles = authorizationService.getRoles(); - List roles = rolesUtils.getRoles(); -// log.debug("ROLES: "); -// roles.forEach(role -> log.debug(role)); - // if (roles.contains(authorizationService.PORTAL_ADMIN)) { - if (rolesUtils.isPortalAdmin(roles)) { + if (rolesUtils.isPortalAdmin()) { // for(Stakeholder stakeholder : stakeholders) { // stakeholdersFull.add(this.setFullEntities(stakeholder, roles)); // } @@ -440,8 +431,8 @@ public class StakeholderController { // if(roles.contains(authorizationService.curator(stakeholder.getType())) // || roles.contains(authorizationService.manager(stakeholder.getType(), stakeholder.getAlias()))) { - if(rolesUtils.isCurator(roles, stakeholder.getType()) - || rolesUtils.isManager(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(rolesUtils.isCurator(stakeholder.getType()) + || rolesUtils.isManager(stakeholder.getType(), stakeholder.getAlias())) { //stakeholdersFull.add(this.setFullEntities(stakeholder, roles)); continue; } else { @@ -466,19 +457,17 @@ public class StakeholderController { } // List roles = authorizationService.getRoles(); - List roles = rolesUtils.getRoles(); - - if(stakeholder.getDefaultId() == null && !rolesUtils.isLoggedIn(roles)) { + if(stakeholder.getDefaultId() == null && !rolesUtils.isLoggedIn()) { // EXCEPTION - Unauthorized throw new AccessDeniedException("Get stakeholder: You are not authorized (not logged in) to access stakeholder with alias: "+alias); } - if(stakeholder.getDefaultId() == null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(stakeholder.getDefaultId() == null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Get stakeholder: You are not authorized to access stakeholder with alias: "+alias); } - if((stakeholder.getVisibility() == Visibility.PRIVATE && !rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias()) - || (stakeholder.getVisibility() == Visibility.RESTRICTED && !rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias()) && !rolesUtils.isMember(roles, stakeholder.getType(), stakeholder.getAlias())))) { + if((stakeholder.getVisibility() == Visibility.PRIVATE && !rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias()) + || (stakeholder.getVisibility() == Visibility.RESTRICTED && !rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias()) && !rolesUtils.isMember(stakeholder.getType(), stakeholder.getAlias())))) { // // EXCEPTION - Access denied // throw new ForbiddenException("Get stakeholder: You are not authorized to get stakeholder with alias: "+alias); List topicsEmpty = stakeholder.getTopics(); @@ -488,7 +477,7 @@ public class StakeholderController { return stakeholder; } - return this.setFullEntities(stakeholder, roles); + return this.setFullEntities(stakeholder); } // @PreAuthorize("isAuthenticated()") @@ -564,12 +553,10 @@ public class StakeholderController { if(stakeholder != null) { pid = stakeholder.getAlias(); -// List roles = authorizationService.getRoles(); - List roles = rolesUtils.getRoles(); // if(!roles.contains(authorizationService.PORTAL_ADMIN) // && !roles.contains(authorizationService.curator(stakeholder.getType()))) { - if(!rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(!rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete stakeholder: You are not authorized to delete stakeholder with id: "+stakeholderId); } @@ -701,12 +688,11 @@ public class StakeholderController { } // List roles = authorizationService.getRoles(); - List roles = rolesUtils.getRoles(); // if(!roles.contains(authorizationService.PORTAL_ADMIN) // && !roles.contains(authorizationService.curator(stakeholder.getType())) // && !roles.contains(authorizationService.manager(stakeholder.getType(), stakeholder.getAlias()))) { - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Change stakeholder visibility: You are not authorized to update stakeholder with id: "+stakeholderId); } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SubCategoryController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SubCategoryController.java index f96d683..06c005f 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SubCategoryController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/SubCategoryController.java @@ -254,8 +254,7 @@ public class SubCategoryController { if(subcategory != null) { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); - List roles = rolesUtils.getRoles(); - if(subcategory.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(subcategory.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete subcategory: You are not authorized to delete a default SubCategory in stakeholder with id: "+stakeholderId); } @@ -497,9 +496,7 @@ public class SubCategoryController { // EXCEPTION - Stakeholder not found throw new EntityNotFoundException("Save indicator: Stakeholder with id: " + stakeholderId + " not found"); } - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("CheckForExceptions SubCategory: You are not authorized to update stakeholder with id: "+stakeholderId); } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/TopicController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/TopicController.java index 1539d4e..ab2e4b8 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/TopicController.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/TopicController.java @@ -73,8 +73,7 @@ public class TopicController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if(stakeholder != null) { - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Save Topic: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -210,8 +209,7 @@ public class TopicController { if(stakeholder != null) { - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete topic: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -219,7 +217,7 @@ public class TopicController { Topic topic = topicDAO.findById(topicId); if(topic != null) { - if(topic.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(roles, stakeholder.getType())) { + if(topic.getDefaultId() != null && !rolesUtils.hasCreateAndDeleteAuthority(stakeholder.getType())) { // EXCEPTION - Access denied throw new ForbiddenException("Delete topic: You are not authorized to delete a default Topic in stakeholder with id: "+stakeholderId); } @@ -356,9 +354,7 @@ public class TopicController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if(stakeholder != null) { - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Reorder topics: You are not authorized to update stakeholder with id: "+stakeholderId); } @@ -438,9 +434,7 @@ public class TopicController { Stakeholder stakeholder = stakeholderDAO.findById(stakeholderId); if (stakeholder != null) { - - List roles = rolesUtils.getRoles(); - if(!rolesUtils.hasUpdateAuthority(roles, stakeholder.getType(), stakeholder.getAlias())) { + if(!rolesUtils.hasUpdateAuthority(stakeholder.getType(), stakeholder.getAlias())) { // EXCEPTION - Access denied throw new ForbiddenException("Toggle topic: You are not authorized to update stakeholder with id: "+stakeholderId); }