This is an automated email from the ASF dual-hosted git repository. dyankiv pushed a commit to branch DATALAB-2990 in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit 0b9e2a4c1675db6806fc99ef1eef644109d982d1 Author: Denys Yankiv <[email protected]> AuthorDate: Fri Sep 9 13:03:29 2022 +0300 not allowing others to reshare images --- .../service/impl/ImageExploratoryServiceImpl.java | 14 ++------------ .../src/main/resources/mongo/general/mongo_roles.json | 13 ------------- 2 files changed, 2 insertions(+), 25 deletions(-) diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java index cc0611af4..c9201d8c1 100644 --- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java +++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java @@ -59,7 +59,6 @@ import org.apache.commons.collections4.CollectionUtils; import java.util.*; import java.util.function.Predicate; import java.util.stream.Collectors; -import java.util.stream.Stream; import static com.epam.datalab.backendapi.domain.AuditActionEnum.CREATE; import static com.epam.datalab.backendapi.domain.AuditActionEnum.TERMINATE; @@ -73,7 +72,6 @@ public class ImageExploratoryServiceImpl implements ImageExploratoryService { private static final String SHARE_OWN_IMAGES_PAGE = "/api/image/share"; private static final String TERMINATE_OWN_IMAGES_PAGE = "/api/image/terminate"; - private static final String SHARE_RECEIVED_IMAGES_PAGE = "/api/image/shareReceived"; @Inject private ExploratoryDAO exploratoryDAO; @@ -335,19 +333,11 @@ public class ImageExploratoryServiceImpl implements ImageExploratoryService { @Override public ImageUserPermissions getUserImagePermissions(UserInfo userInfo, ImageInfoRecord image) { - boolean canShare = false; + boolean canShare = image.getStatus().equals(ImageStatus.ACTIVE) && image.getUser().equals(userInfo.getName()) + && UserRoles.checkAccess(userInfo, RoleType.PAGE, SHARE_OWN_IMAGES_PAGE, userInfo.getRoles()); boolean canTerminate = (image.getStatus().equals(ImageStatus.ACTIVE) || image.getStatus().equals(ImageStatus.FAILED)) && (image.getUser().equals(userInfo.getName()) && UserRoles.checkAccess(userInfo, RoleType.PAGE, TERMINATE_OWN_IMAGES_PAGE, userInfo.getRoles())); - - if(image.getStatus().equals(ImageStatus.ACTIVE) ){ - if(image.getUser().equals(userInfo.getName())){ - canShare = UserRoles.checkAccess(userInfo, RoleType.PAGE, SHARE_OWN_IMAGES_PAGE,userInfo.getRoles()); - } else { - canShare = UserRoles.checkAccess(userInfo, RoleType.PAGE, SHARE_RECEIVED_IMAGES_PAGE,userInfo.getRoles()); - } - } - return new ImageUserPermissions(canShare,canTerminate); } diff --git a/services/self-service/src/main/resources/mongo/general/mongo_roles.json b/services/self-service/src/main/resources/mongo/general/mongo_roles.json index fd5ca0b08..f6bb344c9 100644 --- a/services/self-service/src/main/resources/mongo/general/mongo_roles.json +++ b/services/self-service/src/main/resources/mongo/general/mongo_roles.json @@ -11,19 +11,6 @@ "$anyuser" ] }, - { - "_id": "imgShareAllImages", - "description": "Allow to share own images and others' images", - "type": "IMAGE", - "cloud": "GENERAL", - "pages": [ - "/api/image/share", - "/api/image/shareReceived" - ], - "groups": [ - "$anyuser" - ] - }, { "_id": "imgTerminateOwnImages", "description": "Allow to terminate own images", --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
