Bladeren bron

only admin can create worker group (#1101)

* rename from DatasourceUserMapper to DataSourceUserMapper

* add unit test in UserMapper and WorkerGroupMapper

* change cn.escheduler to org.apache.dolphinscheduler

* add unit test in UdfFuncMapperTest

* add unit test in UdfFuncMapperTest

* remove DatabaseConfiguration

* add ConnectionFactoryTest

* cal duration in processInstancesList

* change desc to description

* change table name in mysql ddl

* change table name in mysql ddl

* change escheduler to dolphinscheduler

* change escheduler to dolphinscheduler

* change escheduler to dolphinscheduler

* remove log4j-1.2-api and modify AlertMapperTest

* remove log4j-1.2-api

* Add alertDao to spring management

* Add alertDao to spring management

* get SqlSessionFactory from MybatisSqlSessionFactoryBean

* get processDao by DaoFactory

* read druid properties in ConneciontFactory

* read druid properties in ConneciontFactory

* change get alertDao by spring to DaoFactory

* add log4j to resolve #967

* resole verify udf name error and delete udf error

* Determine if principal is empty

* Determine whether the logon user has the right to delete the project

* Fixed an issue that produced attatch file named such as ATT00002.bin

* fix too many connection in upgrade or create

* fix NEED_FAULT_TOLERANCE and WAITTING_THREAD count fail

* Added a judgment on whether the currently login user is an administrator

* fix update udf database not change and create time is changed

* add enterprise.wechat.enable to decide whether to send enterprise WeChat

* change method check

* Remove the administrator's judgment on query access token list

* only admin can create worker group
lgcareer 5 jaren geleden
bovenliggende
commit
bea169e4d2

+ 1 - 1
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/WorkerGroupController.java

@@ -76,7 +76,7 @@ public class WorkerGroupController extends BaseController{
                 loginUser.getUserName(), id, name, ipList);
 
         try {
-            Map<String, Object> result = workerGroupService.saveWorkerGroup(id, name, ipList);
+            Map<String, Object> result = workerGroupService.saveWorkerGroup(loginUser,id, name, ipList);
             return returnDataList(result);
         }catch (Exception e){
             logger.error(Status.SAVE_ERROR.getMsg(),e);

+ 6 - 1
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/WorkerGroupService.java

@@ -56,10 +56,15 @@ public class WorkerGroupService extends BaseService {
      * @param ipList
      * @return
      */
-    public Map<String, Object> saveWorkerGroup(int id, String name, String ipList){
+    public Map<String, Object> saveWorkerGroup(User loginUser,int id, String name, String ipList){
 
         Map<String, Object> result = new HashMap<>(5);
 
+        //only admin can operate
+        if (checkAdmin(loginUser, result)){
+            return result;
+        }
+
         if(StringUtils.isEmpty(name)){
             putMsg(result, Status.NAME_NULL);
             return result;