Browse Source
* k8s auth * remove log * fix test * use constants * use constants K8S_LOCAL_TEST_CLUSTER * simple auth get * change test * add namespace authorize in user page * prettier code * change test data Co-authored-by: qianl4 <qianl4@cicso.com> Co-authored-by: William Tong <weitong@cisco.com>3.0.0/version-upgrade
qianli2022
3 years ago
committed by
GitHub
37 changed files with 1074 additions and 138 deletions
@ -0,0 +1,164 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.entity; |
||||
|
||||
import java.util.Date; |
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType; |
||||
import com.baomidou.mybatisplus.annotation.TableField; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
||||
/** |
||||
* k8s namespace and user relation |
||||
*/ |
||||
@TableName("t_ds_relation_namespace_user") |
||||
public class K8sNamespaceUser { |
||||
/** |
||||
* id |
||||
*/ |
||||
@TableId(value = "id", type = IdType.AUTO) |
||||
private int id; |
||||
|
||||
/** |
||||
* user id |
||||
*/ |
||||
@TableField("user_id") |
||||
private int userId; |
||||
|
||||
/** |
||||
* namespace id |
||||
*/ |
||||
@TableField("namespace_id") |
||||
private int namespaceId; |
||||
|
||||
/** |
||||
* k8s cluster |
||||
*/ |
||||
@TableField(exist = false) |
||||
private String k8s; |
||||
|
||||
/** |
||||
* namespace name |
||||
*/ |
||||
@TableField(exist = false) |
||||
private String namespaceName; |
||||
|
||||
/** |
||||
* user name |
||||
*/ |
||||
@TableField(exist = false) |
||||
private String userName; |
||||
|
||||
/** |
||||
* permission |
||||
*/ |
||||
private int perm; |
||||
|
||||
@TableField("create_time") |
||||
private Date createTime; |
||||
|
||||
@TableField("update_time") |
||||
private Date updateTime; |
||||
|
||||
public int getId() { |
||||
return id; |
||||
} |
||||
|
||||
public void setId(int id) { |
||||
this.id = id; |
||||
} |
||||
|
||||
public int getUserId() { |
||||
return userId; |
||||
} |
||||
|
||||
public void setUserId(int userId) { |
||||
this.userId = userId; |
||||
} |
||||
|
||||
public int getNamespaceId() { |
||||
return namespaceId; |
||||
} |
||||
|
||||
public void setNamespaceId(int namespaceId) { |
||||
this.namespaceId = namespaceId; |
||||
} |
||||
|
||||
public String getK8s() { |
||||
return k8s; |
||||
} |
||||
|
||||
public void setK8s(String k8s) { |
||||
this.k8s = k8s; |
||||
} |
||||
|
||||
public String getNamespaceName() { |
||||
return namespaceName; |
||||
} |
||||
|
||||
public void setNamespaceName(String namespaceName) { |
||||
this.namespaceName = namespaceName; |
||||
} |
||||
|
||||
public String getUserName() { |
||||
return userName; |
||||
} |
||||
|
||||
public void setUserName(String userName) { |
||||
this.userName = userName; |
||||
} |
||||
|
||||
public int getPerm() { |
||||
return perm; |
||||
} |
||||
|
||||
public void setPerm(int perm) { |
||||
this.perm = perm; |
||||
} |
||||
|
||||
public Date getCreateTime() { |
||||
return createTime; |
||||
} |
||||
|
||||
public void setCreateTime(Date createTime) { |
||||
this.createTime = createTime; |
||||
} |
||||
|
||||
public Date getUpdateTime() { |
||||
return updateTime; |
||||
} |
||||
|
||||
public void setUpdateTime(Date updateTime) { |
||||
this.updateTime = updateTime; |
||||
} |
||||
|
||||
@Override |
||||
public String toString() { |
||||
return "K8sNamespaceUser{" + |
||||
"id=" + id + |
||||
", userId=" + userId + |
||||
", namespaceId=" + namespaceId + |
||||
", k8s=" + k8s + |
||||
", namespaceName=" + namespaceName + |
||||
", perm=" + perm + |
||||
", createTime=" + createTime + |
||||
", updateTime=" + updateTime + |
||||
'}'; |
||||
} |
||||
} |
@ -0,0 +1,50 @@
|
||||
/* |
||||
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||
* contributor license agreements. See the NOTICE file distributed with |
||||
* this work for additional information regarding copyright ownership. |
||||
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
* (the "License"); you may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.apache.dolphinscheduler.dao.mapper; |
||||
|
||||
import org.apache.dolphinscheduler.dao.entity.K8sNamespaceUser; |
||||
|
||||
import org.apache.ibatis.annotations.Param; |
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
||||
/** |
||||
* namespace user mapper interface
|
||||
*/ |
||||
public interface K8sNamespaceUserMapper extends BaseMapper<K8sNamespaceUser> { |
||||
|
||||
/** |
||||
* delete namespace user relation |
||||
* |
||||
* @param namespaceId namespaceId |
||||
* @param userId userId |
||||
* @return delete result |
||||
*/ |
||||
int deleteNamespaceRelation(@Param("namespaceId") int namespaceId, |
||||
@Param("userId") int userId); |
||||
|
||||
/** |
||||
* query namespace relation |
||||
* |
||||
* @param namespaceId namespaceId |
||||
* @param userId userId |
||||
* @return namespace user relation |
||||
*/ |
||||
K8sNamespaceUser queryNamespaceRelation(@Param("namespaceId") int namespaceId, |
||||
@Param("userId") int userId); |
||||
} |
@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?> |
||||
<!-- |
||||
~ Licensed to the Apache Software Foundation (ASF) under one or more |
||||
~ contributor license agreements. See the NOTICE file distributed with |
||||
~ this work for additional information regarding copyright ownership. |
||||
~ The ASF licenses this file to You under the Apache License, Version 2.0 |
||||
~ (the "License"); you may not use this file except in compliance with |
||||
~ the License. You may obtain a copy of the License at |
||||
~ |
||||
~ http://www.apache.org/licenses/LICENSE-2.0 |
||||
~ |
||||
~ Unless required by applicable law or agreed to in writing, software |
||||
~ distributed under the License is distributed on an "AS IS" BASIS, |
||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
~ See the License for the specific language governing permissions and |
||||
~ limitations under the License. |
||||
--> |
||||
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > |
||||
<mapper namespace="org.apache.dolphinscheduler.dao.mapper.K8sNamespaceUserMapper"> |
||||
<sql id="baseSql"> |
||||
id, user_id, namespace_id, perm, create_time, update_time |
||||
</sql> |
||||
<delete id="deleteNamespaceRelation"> |
||||
delete from t_ds_relation_namespace_user |
||||
where 1=1 |
||||
and user_id = #{userId} |
||||
<if test="namespaceId != 0 "> |
||||
and namespace_id = #{namespaceId} |
||||
</if> |
||||
</delete> |
||||
<select id="queryNamespaceRelation" resultType="org.apache.dolphinscheduler.dao.entity.K8sNamespaceUser"> |
||||
select |
||||
<include refid="baseSql"/> |
||||
from t_ds_relation_namespace_user |
||||
where namespace_id = #{namespaceId} |
||||
and user_id = #{userId} |
||||
limit 1 |
||||
</select> |
||||
</mapper> |
Loading…
Reference in new issue