This is an automated email from the ASF dual-hosted git repository.
journey pushed a commit to branch dev-1.2.1
in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
The following commit(s) were added to refs/heads/dev-1.2.1 by this push:
new ba859c9 update method checkDownloadPermission in order to fix issues
1770 (#1794)
ba859c9 is described below
commit ba859c9d0fe56ffd831d5661fa63be95f3d8670c
Author: lgcareer <[email protected]>
AuthorDate: Fri Jan 10 12:01:17 2020 +0800
update method checkDownloadPermission in order to fix issues 1770 (#1794)
* add check download resource permission in order to fix issues 1770
* update method checkDownloadPermission in order to fix issues 1770
* update method listUnauthorizedResource in order to fix issues 1770
---
.../src/main/java/org/apache/dolphinscheduler/dao/ProcessDao.java | 6 +++---
.../dolphinscheduler/server/worker/runner/TaskScheduleThread.java | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/ProcessDao.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/ProcessDao.java
index 33fd21d..d80c9c5 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/ProcessDao.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/ProcessDao.java
@@ -1774,10 +1774,10 @@ public class ProcessDao {
public List<String> listUnauthorizedResource(int userId,String[] resNames){
List<String> resultList = new ArrayList<String>();
- List<String> originResList = Arrays.asList(resNames);
- List<Resource> authorizedResourceList =
resourceMapper.listAuthorizedResource(userId, resNames);
+ if(ArrayUtils.isNotEmpty(resNames)){
+ List<String> originResList = Arrays.asList(resNames);
+ List<Resource> authorizedResourceList =
resourceMapper.listAuthorizedResource(userId, resNames);
- if(CollectionUtils.isNotEmpty(authorizedResourceList)){
List<String> authorizedResNames =
authorizedResourceList.stream().map(t -> t.getAlias()).collect(toList());
resultList = originResList.stream().filter(item ->
!authorizedResNames.contains(item)).collect(toList());
}
diff --git
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/runner/TaskScheduleThread.java
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/runner/TaskScheduleThread.java
index 27521d3..0ef6c1d 100644
---
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/runner/TaskScheduleThread.java
+++
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/runner/TaskScheduleThread.java
@@ -342,7 +342,7 @@ public class TaskScheduleThread implements Runnable {
// get user type in order to judge whether the user is admin
User user = processDao.getUserById(userId);
if (user.getUserType() != UserType.ADMIN_USER){
- List<String> unauthorizedResource =
processDao.listUnauthorizedResource(userId, (String[]) projectRes.toArray());
+ List<String> unauthorizedResource =
processDao.listUnauthorizedResource(userId, projectRes.toArray(new
String[projectRes.size()]));
// if exist unauthorized resource
if(CollectionUtils.isNotEmpty(unauthorizedResource)){
logger.error("user {} didn't has download permission of
resource file: {}", user.getUserName(), unauthorizedResource.toString());