private boolean userDoesNotHaveViewPermission(Username user, LocalizedOperationResult operationResult) { if (!securityService.hasViewPermissionForPipeline(user, pipelineName)) { operationResult.forbidden("User '" + CaseInsensitiveString.str(user.getUsername()) + "' does not have view permission on pipeline '" + pipelineName + "'", forbiddenForPipeline(pipelineName)); return true; } return false; } }
public boolean canEditPipeline(String pipelineName, Username username, LocalizedOperationResult result, String groupName) { if (!doesPipelineExist(pipelineName, result)) { return false; } if (!isUserAdminOfGroup(username.getUsername(), groupName)) { result.forbidden(forbiddenToEditPipeline(pipelineName), forbiddenForPipeline(pipelineName)); return false; } return true; }
public MingleConfig mingleConfigForPipelineNamed(String pipelineName, Username user, HttpLocalizedOperationResult result) { if (!securityService.hasViewPermissionForPipeline(user, pipelineName)) { result.forbidden(LocalizedMessage.forbiddenToViewPipeline(pipelineName), HealthStateType.forbiddenForPipeline(pipelineName)); return null; } PipelineConfig pipelineConfig = goConfigService.pipelineConfigNamed(new CaseInsensitiveString(pipelineName)); MingleConfig mingleConfig = pipelineConfig.getMingleConfig(); return mingleConfig.equals(new MingleConfig()) ? null : mingleConfig; }
private boolean notAuthorized(String pipelineName, String pauseBy, LocalizedOperationResult result) { CruiseConfig cruiseConfig = goConfigService.getCurrentConfig(); PipelineConfig pipelineConfig = cruiseConfig.pipelineConfigByName(new CaseInsensitiveString(pipelineName)); if (securityService.hasOperatePermissionForGroup(new CaseInsensitiveString(pauseBy), cruiseConfig.findGroupOfPipeline(pipelineConfig).getGroup())) { return false; } result.forbidden(LocalizedMessage.forbiddenToEditPipeline(pipelineName), forbiddenForPipeline(pipelineName)); return true; }