You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by pe...@apache.org on 2022/04/02 06:39:19 UTC
[incubator-linkis] branch dev-1.1.2 updated: add admin auth check for api /configuration/createSecondCategory and /microservice/allInstance (#1869)
This is an automated email from the ASF dual-hosted git repository.
peacewong pushed a commit to branch dev-1.1.2
in repository https://gitbox.apache.org/repos/asf/incubator-linkis.git
The following commit(s) were added to refs/heads/dev-1.1.2 by this push:
new e844d1f add admin auth check for api /configuration/createSecondCategory and /microservice/allInstance (#1869)
e844d1f is described below
commit e844d1fe0908af310faee35fa89423fc2708dddb
Author: legendtkl <ta...@gmail.com>
AuthorDate: Sat Apr 2 14:39:12 2022 +0800
add admin auth check for api /configuration/createSecondCategory and /microservice/allInstance (#1869)
* add admin auth check for api /configuration/createSecondCategory and /microservice/allInstance
* address review comment
---
.../restful/api/ConfigurationRestfulApi.java | 2 ++
.../instance/label/restful/InstanceRestful.java | 22 ++++++++++++++++------
2 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/linkis-public-enhancements/linkis-publicservice/linkis-configuration/src/main/java/org/apache/linkis/configuration/restful/api/ConfigurationRestfulApi.java b/linkis-public-enhancements/linkis-publicservice/linkis-configuration/src/main/java/org/apache/linkis/configuration/restful/api/ConfigurationRestfulApi.java
index 6ca907d..6d21707 100644
--- a/linkis-public-enhancements/linkis-publicservice/linkis-configuration/src/main/java/org/apache/linkis/configuration/restful/api/ConfigurationRestfulApi.java
+++ b/linkis-public-enhancements/linkis-publicservice/linkis-configuration/src/main/java/org/apache/linkis/configuration/restful/api/ConfigurationRestfulApi.java
@@ -138,6 +138,8 @@ public class ConfigurationRestfulApi {
@RequestMapping(path = "/createSecondCategory", method = RequestMethod.POST)
public Message createSecondCategory(HttpServletRequest request, @RequestBody JsonNode jsonNode)
throws ConfigurationException {
+ String username = ModuleUserUtils.getOperationUser(request, "createSecondCategory");
+ checkAdmin(username);
Integer categoryId = jsonNode.get("categoryId").asInt();
String engineType = jsonNode.get("engineType").asText();
String version = jsonNode.get("version").asText();
diff --git a/linkis-public-enhancements/linkis-publicservice/linkis-instance-label/linkis-instance-label-server/src/main/java/org/apache/linkis/instance/label/restful/InstanceRestful.java b/linkis-public-enhancements/linkis-publicservice/linkis-instance-label/linkis-instance-label-server/src/main/java/org/apache/linkis/instance/label/restful/InstanceRestful.java
index 2a42def..901bbd8 100644
--- a/linkis-public-enhancements/linkis-publicservice/linkis-instance-label/linkis-instance-label-server/src/main/java/org/apache/linkis/instance/label/restful/InstanceRestful.java
+++ b/linkis-public-enhancements/linkis-publicservice/linkis-instance-label/linkis-instance-label-server/src/main/java/org/apache/linkis/instance/label/restful/InstanceRestful.java
@@ -18,8 +18,8 @@
package org.apache.linkis.instance.label.restful;
import org.apache.linkis.common.ServiceInstance;
+import org.apache.linkis.common.conf.Configuration;
import org.apache.linkis.instance.label.entity.InstanceInfo;
-import org.apache.linkis.instance.label.service.conf.InstanceConfigration;
import org.apache.linkis.instance.label.service.impl.DefaultInsLabelService;
import org.apache.linkis.instance.label.utils.EntityParser;
import org.apache.linkis.instance.label.vo.InstanceInfoVo;
@@ -59,7 +59,15 @@ public class InstanceRestful {
@Autowired private DefaultInsLabelService insLabelService;
@RequestMapping(path = "/allInstance", method = RequestMethod.GET)
- public Message listAllInstanceWithLabel(HttpServletRequest req) {
+ public Message listAllInstanceWithLabel(HttpServletRequest req) throws Exception {
+ String userName = ModuleUserUtils.getOperationUser(req);
+ if (!Configuration.isAdmin(userName)) {
+ throw new Exception(
+ String.format(
+ "Only admin can view all instances(只有管理员才能查看所有实例). The user [%s] is not admin.",
+ userName));
+ }
+
logger.info("start to get all instance informations.....");
List<InstanceInfo> instances = insLabelService.listAllInstanceWithLabel();
insLabelService.markInstanceLabel(instances);
@@ -71,10 +79,12 @@ public class InstanceRestful {
@RequestMapping(path = "/instanceLabel", method = RequestMethod.PUT)
public Message upDateInstanceLabel(HttpServletRequest req, @RequestBody JsonNode jsonNode)
throws Exception {
- String username = ModuleUserUtils.getOperationUser(req);
- String[] adminArray = InstanceConfigration.GOVERNANCE_STATION_ADMIN().getValue().split(",");
- if (adminArray != null && !Arrays.asList(adminArray).contains(username)) {
- throw new Exception("only admin can modify instance label(只有管理员才能修改标签)");
+ String userName = ModuleUserUtils.getOperationUser(req);
+ if (!Configuration.isAdmin(userName)) {
+ throw new Exception(
+ String.format(
+ "Only admin can modify instance label(只有管理员才能修改标签). The user [%s] is not admin",
+ userName));
}
String instanceName = jsonNode.get("instance").asText();
String instanceType = jsonNode.get("applicationName").asText();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org