Skip to content

Commit 34d4356

Browse files
committed
permission check
1 parent 96ad6d4 commit 34d4356

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

server/odc-service/src/main/java/com/oceanbase/odc/service/flow/FlowInstanceService.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -974,8 +974,6 @@ private void checkCreateFlowInstancePermission(CreateFlowInstanceReq req) {
974974
MultipleDatabaseChangeParameters parameters = (MultipleDatabaseChangeParameters) req.getParameters();
975975
databaseIds =
976976
parameters.getOrderedDatabaseIds().stream().flatMap(Collection::stream).collect(Collectors.toSet());
977-
} else if (taskType == TaskType.LOGICAL_DATABASE_CHANGE) {
978-
return;
979977
}
980978
permissionHelper.checkDBPermissions(databaseIds, DatabasePermissionType.from(req.getTaskType()));
981979
}

server/odc-service/src/main/java/com/oceanbase/odc/service/permission/DBResourcePermissionHelper.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,10 +130,12 @@ public void checkDBPermissions(Collection<Long> databaseIds, Collection<Database
130130
if (e.getProjectId() == null) {
131131
throw new AccessDeniedException("Database is not belong to any project");
132132
}
133-
DialectType dialectType = id2Entity.get(e.getConnectionId()).getDialectType();
134-
if (permissionCheckWhitelist.containsDatabase(e.getName(), dialectType)
133+
if (!id2Entity.isEmpty()) {
134+
DialectType dialectType = id2Entity.get(e.getConnectionId()).getDialectType();
135+
if (permissionCheckWhitelist.containsDatabase(e.getName(), dialectType)
135136
|| projectIds.contains(e.getProjectId())) {
136-
continue;
137+
continue;
138+
}
137139
}
138140
toCheckDatabaseIds.add(e.getId());
139141
}

0 commit comments

Comments
 (0)