You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by wa...@apache.org on 2026/09/08 02:54:41 UTC
(inlong) branch master updated: [INLONG-12211][Manager] Add tenant verification to the source/list API (#12212)
This is an automated email from the ASF dual-hosted git repository.
fuweng11 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong.git
The following commit(s) were added to refs/heads/master by this push:
new 460761044d [INLONG-12211][Manager] Add tenant verification to the source/list API (#12212)
460761044d is described below
commit 460761044d463a97391afcecb127266cd83f362a
Author: fuweng11 <76...@users.noreply.github.com>
AuthorDate: Tue Sep 8 10:54:33 2026 +0800
[INLONG-12211][Manager] Add tenant verification to the source/list API (#12212)
* [INLONG-12211][Manager] Add tenant verification to the source/list API
* [INLONG-12211][Manager] Add tenant verification to the source/list API
* [INLONG-12211][Manager] Add tenant verification to the source/list API
---------
Co-authored-by: wakefu <wa...@tencent.com>
---
.../manager/service/source/StreamSourceService.java | 3 ++-
.../manager/service/source/StreamSourceServiceImpl.java | 15 ++++++++++++++-
.../manager/web/controller/StreamSourceController.java | 2 +-
3 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceService.java b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceService.java
index 50b5150817..1c9e80b4c4 100644
--- a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceService.java
+++ b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceService.java
@@ -95,9 +95,10 @@ public interface StreamSourceService {
* Paging query source information based on conditions.
*
* @param request paging request.
+ * @param operator Operator's name.
* @return source list
*/
- PageResult<? extends StreamSource> listByCondition(SourcePageRequest request);
+ PageResult<? extends StreamSource> listByCondition(SourcePageRequest request, String operator);
/**
* Paging query source information based on conditions.
diff --git a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceServiceImpl.java b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceServiceImpl.java
index c2746e0d0a..0f9296d4d2 100644
--- a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceServiceImpl.java
+++ b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/source/StreamSourceServiceImpl.java
@@ -223,10 +223,17 @@ public class StreamSourceServiceImpl implements StreamSourceService {
}
@Override
- public PageResult<? extends StreamSource> listByCondition(SourcePageRequest request) {
+ public PageResult<? extends StreamSource> listByCondition(SourcePageRequest request, String operator) {
PageHelper.startPage(request.getPageNum(), request.getPageSize());
OrderFieldEnum.checkOrderField(request);
OrderTypeEnum.checkOrderType(request);
+ InlongGroupEntity groupEntity =
+ groupMapper.selectByGroupId(request.getInlongGroupId());
+ if (groupEntity == null) {
+ throw new BusinessException(ErrorCodeEnum.GROUP_NOT_FOUND);
+ }
+ userService.checkUser(groupEntity.getInCharges(), operator,
+ "Current user does not have permission to list source info");
Page<StreamSourceEntity> entityPage = (Page<StreamSourceEntity>) sourceMapper.selectByCondition(request);
// Encapsulate the paging query results into the PageInfo object to obtain related paging information
Map<String, Page<StreamSourceEntity>> sourceMap = Maps.newHashMap();
@@ -557,6 +564,12 @@ public class StreamSourceServiceImpl implements StreamSourceService {
@Override
public List<Integer> addDataAddTask(DataAddTaskRequest request, String operator) {
LOGGER.info("begin to add data add task info: {}", request);
+ InlongGroupEntity groupEntity = groupMapper.selectByGroupId(request.getGroupId());
+ if (groupEntity == null) {
+ throw new BusinessException(ErrorCodeEnum.GROUP_NOT_FOUND,
+ String.format("InlongGroup does not exist with InlongGroupId=%s", request.getGroupId()));
+ }
+ userService.checkUser(request.getGroupId(), operator, "current user not allowed to add data add task");
String auditVersion = String.valueOf(sourceMapper.selectDataAddTaskCount(request.getGroupId(), null));
request.setAuditVersion(auditVersion);
List<String> agentIpList = request.getAgentIpList();
diff --git a/inlong-manager/manager-web/src/main/java/org/apache/inlong/manager/web/controller/StreamSourceController.java b/inlong-manager/manager-web/src/main/java/org/apache/inlong/manager/web/controller/StreamSourceController.java
index 4253747ee1..e60a2f8bb8 100644
--- a/inlong-manager/manager-web/src/main/java/org/apache/inlong/manager/web/controller/StreamSourceController.java
+++ b/inlong-manager/manager-web/src/main/java/org/apache/inlong/manager/web/controller/StreamSourceController.java
@@ -83,7 +83,7 @@ public class StreamSourceController {
@RequestMapping(value = "/source/list", method = RequestMethod.POST)
@ApiOperation(value = "List stream sources by paginating")
public Response<PageResult<? extends StreamSource>> listByCondition(@RequestBody SourcePageRequest request) {
- return Response.success(sourceService.listByCondition(request));
+ return Response.success(sourceService.listByCondition(request, LoginUserUtils.getLoginUser().getName()));
}
@RequestMapping(value = "/source/update", method = RequestMethod.POST)