@Test public void test_isAuthorized_failure_400() { UserDetails userDetails = getMockUser(false); String path = "users/safe1"; ResponseEntity<String> responseEntityExpected = ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); when(ControllerUtil.isPathValid(path)).thenReturn(false); ResponseEntity<String> responseEntity = selfSupportService.isAuthorized(userDetails, path); assertEquals(HttpStatus.BAD_REQUEST, responseEntity.getStatusCode()); assertEquals(responseEntityExpected, responseEntity); }
public ResponseEntity<String> isAuthorized (UserDetails userDetails, String path) { if (!ControllerUtil.isPathValid(path)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String safeType = ControllerUtil.getSafeType(path); String safeName = ControllerUtil.getSafeName(path); if (StringUtils.isEmpty(safeType) || StringUtils.isEmpty(safeName)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String powerToken = userDetails.getSelfSupportToken(); String username = userDetails.getUsername(); Safe safeMetaData = safeUtils.getSafeMetaData(powerToken, safeType, safeName); if (safeMetaData == null) { return ResponseEntity.status(HttpStatus.OK).body("false"); } String[] latestPolicies = policyUtils.getCurrentPolicies(powerToken, username, userDetails); ArrayList<String> policiesTobeChecked = policyUtils.getPoliciesTobeCheked(safeType, safeName); boolean isAuthorized = authorizationUtils.isAuthorized(userDetails, safeMetaData, latestPolicies, policiesTobeChecked, false); return ResponseEntity.status(HttpStatus.OK).body(String.valueOf(isAuthorized)); }
SelfSupportService { public ResponseEntity<String> isAuthorized (UserDetails userDetails, String path) { if (!ControllerUtil.isPathValid(path)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String safeType = ControllerUtil.getSafeType(path); String safeName = ControllerUtil.getSafeName(path); if (StringUtils.isEmpty(safeType) || StringUtils.isEmpty(safeName)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String powerToken = userDetails.getSelfSupportToken(); String username = userDetails.getUsername(); Safe safeMetaData = safeUtils.getSafeMetaData(powerToken, safeType, safeName); if (safeMetaData == null) { return ResponseEntity.status(HttpStatus.OK).body("false"); } String[] latestPolicies = policyUtils.getCurrentPolicies(powerToken, username, userDetails); ArrayList<String> policiesTobeChecked = policyUtils.getPoliciesTobeCheked(safeType, safeName); boolean isAuthorized = authorizationUtils.isAuthorized(userDetails, safeMetaData, latestPolicies, policiesTobeChecked, false); return ResponseEntity.status(HttpStatus.OK).body(String.valueOf(isAuthorized)); } }
SelfSupportService { public ResponseEntity<String> isAuthorized (UserDetails userDetails, String path) { if (!ControllerUtil.isPathValid(path)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String safeType = ControllerUtil.getSafeType(path); String safeName = ControllerUtil.getSafeName(path); if (StringUtils.isEmpty(safeType) || StringUtils.isEmpty(safeName)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String powerToken = userDetails.getSelfSupportToken(); String username = userDetails.getUsername(); Safe safeMetaData = safeUtils.getSafeMetaData(powerToken, safeType, safeName); if (safeMetaData == null) { return ResponseEntity.status(HttpStatus.OK).body("false"); } String[] latestPolicies = policyUtils.getCurrentPolicies(powerToken, username, userDetails); ArrayList<String> policiesTobeChecked = policyUtils.getPoliciesTobeCheked(safeType, safeName); boolean isAuthorized = authorizationUtils.isAuthorized(userDetails, safeMetaData, latestPolicies, policiesTobeChecked, false); return ResponseEntity.status(HttpStatus.OK).body(String.valueOf(isAuthorized)); }  }
SelfSupportService { public ResponseEntity<String> isAuthorized (UserDetails userDetails, String path) { if (!ControllerUtil.isPathValid(path)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String safeType = ControllerUtil.getSafeType(path); String safeName = ControllerUtil.getSafeName(path); if (StringUtils.isEmpty(safeType) || StringUtils.isEmpty(safeName)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String powerToken = userDetails.getSelfSupportToken(); String username = userDetails.getUsername(); Safe safeMetaData = safeUtils.getSafeMetaData(powerToken, safeType, safeName); if (safeMetaData == null) { return ResponseEntity.status(HttpStatus.OK).body("false"); } String[] latestPolicies = policyUtils.getCurrentPolicies(powerToken, username, userDetails); ArrayList<String> policiesTobeChecked = policyUtils.getPoliciesTobeCheked(safeType, safeName); boolean isAuthorized = authorizationUtils.isAuthorized(userDetails, safeMetaData, latestPolicies, policiesTobeChecked, false); return ResponseEntity.status(HttpStatus.OK).body(String.valueOf(isAuthorized)); }  ResponseEntity<String> createSafe(UserDetails userDetails, String userToken, Safe safe); ResponseEntity<String> addUserToSafe(UserDetails userDetails, String userToken, SafeUser safeUser); ResponseEntity<String> getInfo(UserDetails userDetails, String userToken, String path); ResponseEntity<String> getSafe(UserDetails userDetails, String userToken, String path); ResponseEntity<String> removeUserFromSafe(UserDetails userDetails, String userToken, SafeUser safeUser); ResponseEntity<String> getFoldersRecursively(UserDetails userDetails, String userToken, String path); ResponseEntity<String> isAuthorized(UserDetails userDetails, String path); ResponseEntity<String> updateSafe(UserDetails userDetails, String userToken, Safe safe); ResponseEntity<String> deletefolder(UserDetails userDetails, String userToken, String path); ResponseEntity<String> addGroupToSafe(UserDetails userDetails, String userToken, SafeGroup safeGroup); ResponseEntity<String> removeGroupFromSafe(UserDetails userDetails, String userToken, SafeGroup safeGroup); ResponseEntity<String> addAwsRoleToSafe(UserDetails userDetails, String userToken, AWSRole awsRole); ResponseEntity<String> removeAWSRoleFromSafe(UserDetails userDetails, String userToken, AWSRole awsRole, boolean detachOnly); ResponseEntity<String> associateApproletoSDB(UserDetails userDetails, String userToken, SafeAppRoleAccess safeAppRoleAccess); ResponseEntity<String> deleteApproleFromSDB(UserDetails userDetails, String userToken, SafeAppRoleAccess safeAppRoleAccess); ResponseEntity<String> createRole(UserDetails userDetails, String userToken, AWSLoginRole awsLoginRole, String path); ResponseEntity<String> updateRole(UserDetails userDetails, String userToken, AWSLoginRole awsLoginRole, String path); ResponseEntity<String> createIAMRole(UserDetails userDetails, String userToken, AWSIAMRole awsiamRole, String path); ResponseEntity<String> updateIAMRole(UserDetails userDetails, String userToken, AWSIAMRole awsiamRole, String path); ResponseEntity<String> getAllSafeNames(UserDetails userDetails); ResponseEntity<String> createAppRole(String userToken, AppRole appRole, UserDetails userDetails); ResponseEntity<String> deleteAppRole(String userToken, AppRole appRole, UserDetails userDetails); ResponseEntity<String> getSafes(UserDetails userDetails, String userToken); ResponseEntity<String> readAppRoles(String userToken, UserDetails userDetails); ResponseEntity<String> listAppRoles(String userToken, UserDetails userDetails); ResponseEntity<String> readAppRole(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleRoleId(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleSecretId(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleDetails(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readSecretIdAccessors(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> deleteSecretIds(String userToken, AppRoleAccessorIds appRoleAccessorIds, UserDetails userDetails); ResponseEntity<String> updateAppRole(String userToken, AppRole appRole, UserDetails userDetails); }
SelfSupportService { public ResponseEntity<String> isAuthorized (UserDetails userDetails, String path) { if (!ControllerUtil.isPathValid(path)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String safeType = ControllerUtil.getSafeType(path); String safeName = ControllerUtil.getSafeName(path); if (StringUtils.isEmpty(safeType) || StringUtils.isEmpty(safeName)) { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"errors\":[\"Invalid path specified\"]}"); } String powerToken = userDetails.getSelfSupportToken(); String username = userDetails.getUsername(); Safe safeMetaData = safeUtils.getSafeMetaData(powerToken, safeType, safeName); if (safeMetaData == null) { return ResponseEntity.status(HttpStatus.OK).body("false"); } String[] latestPolicies = policyUtils.getCurrentPolicies(powerToken, username, userDetails); ArrayList<String> policiesTobeChecked = policyUtils.getPoliciesTobeCheked(safeType, safeName); boolean isAuthorized = authorizationUtils.isAuthorized(userDetails, safeMetaData, latestPolicies, policiesTobeChecked, false); return ResponseEntity.status(HttpStatus.OK).body(String.valueOf(isAuthorized)); }  ResponseEntity<String> createSafe(UserDetails userDetails, String userToken, Safe safe); ResponseEntity<String> addUserToSafe(UserDetails userDetails, String userToken, SafeUser safeUser); ResponseEntity<String> getInfo(UserDetails userDetails, String userToken, String path); ResponseEntity<String> getSafe(UserDetails userDetails, String userToken, String path); ResponseEntity<String> removeUserFromSafe(UserDetails userDetails, String userToken, SafeUser safeUser); ResponseEntity<String> getFoldersRecursively(UserDetails userDetails, String userToken, String path); ResponseEntity<String> isAuthorized(UserDetails userDetails, String path); ResponseEntity<String> updateSafe(UserDetails userDetails, String userToken, Safe safe); ResponseEntity<String> deletefolder(UserDetails userDetails, String userToken, String path); ResponseEntity<String> addGroupToSafe(UserDetails userDetails, String userToken, SafeGroup safeGroup); ResponseEntity<String> removeGroupFromSafe(UserDetails userDetails, String userToken, SafeGroup safeGroup); ResponseEntity<String> addAwsRoleToSafe(UserDetails userDetails, String userToken, AWSRole awsRole); ResponseEntity<String> removeAWSRoleFromSafe(UserDetails userDetails, String userToken, AWSRole awsRole, boolean detachOnly); ResponseEntity<String> associateApproletoSDB(UserDetails userDetails, String userToken, SafeAppRoleAccess safeAppRoleAccess); ResponseEntity<String> deleteApproleFromSDB(UserDetails userDetails, String userToken, SafeAppRoleAccess safeAppRoleAccess); ResponseEntity<String> createRole(UserDetails userDetails, String userToken, AWSLoginRole awsLoginRole, String path); ResponseEntity<String> updateRole(UserDetails userDetails, String userToken, AWSLoginRole awsLoginRole, String path); ResponseEntity<String> createIAMRole(UserDetails userDetails, String userToken, AWSIAMRole awsiamRole, String path); ResponseEntity<String> updateIAMRole(UserDetails userDetails, String userToken, AWSIAMRole awsiamRole, String path); ResponseEntity<String> getAllSafeNames(UserDetails userDetails); ResponseEntity<String> createAppRole(String userToken, AppRole appRole, UserDetails userDetails); ResponseEntity<String> deleteAppRole(String userToken, AppRole appRole, UserDetails userDetails); ResponseEntity<String> getSafes(UserDetails userDetails, String userToken); ResponseEntity<String> readAppRoles(String userToken, UserDetails userDetails); ResponseEntity<String> listAppRoles(String userToken, UserDetails userDetails); ResponseEntity<String> readAppRole(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleRoleId(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleSecretId(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readAppRoleDetails(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> readSecretIdAccessors(String userToken, String rolename, UserDetails userDetails); ResponseEntity<String> deleteSecretIds(String userToken, AppRoleAccessorIds appRoleAccessorIds, UserDetails userDetails); ResponseEntity<String> updateAppRole(String userToken, AppRole appRole, UserDetails userDetails);  }