Merge pull request #443 from jumpserver/pr@dev@perf_userpage_k8s_detail

feat: 用户详情页面添加K8S应用
This commit is contained in:
八千流
2020-10-16 09:07:30 +08:00
committed by GitHub
5 changed files with 126 additions and 1 deletions

View File

@@ -857,7 +857,9 @@
"tabs": {
"assetPermissionRules": "资产授权规则",
"databasePermissionRules": "数据库授权规则",
"k8sPermissionRules": "Kubernetes授权规则",
"grantedAssets": "授权的资产",
"grantedK8Ss": "授权的Kubernetes",
"grantedDatabases": "授权的数据库",
"grantedRemoteApps": "授权的远程应用",
"remoteAppPermissionRules": "远程应用授权规则"

View File

@@ -855,7 +855,9 @@
"tabs": {
"assetPermissionRules": "Asset permission rules",
"databasePermissionRules": "Database Permission rules",
"k8sPermissionRules": "Kubernetes Permission rules",
"grantedAssets": "Granted assets",
"grantedK8Ss":"Granted K8Ss",
"grantedDatabases": "Granted databases",
"grantedRemoteApps": "Granted remote apps",
"remoteAppPermissionRules": "Remote app permission rules"

View File

@@ -0,0 +1,43 @@
<template>
<ListTable :table-config="tableConfig" :header-actions="headerActions" />
</template>
<script>
import ListTable from '@/components/ListTable'
export default {
name: 'UserGrantedK8Ss',
components: {
ListTable
},
props: {
object: {
type: Object,
required: true
}
},
data() {
return {
tableConfig: {
url: `/api/v1/perms/users/${this.object.id}/k8s-apps/?draw=1`,
columns: ['name', 'type', 'cluster', 'comment'],
columnsMeta: {
name: {
formatterArgs: {
route: 'KubernetesAppDetail'
}
}
}
},
headerActions: {
hasLeftActions: false,
hasImport: false,
hasExport: false
}
}
}
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,66 @@
<template>
<ListTable :table-config="tableConfig" :header-actions="headerActions" />
</template>
<script>
import ListTable from '@/components/ListTable'
export default {
name: 'UserDatabasePermissionRules',
components: {
ListTable
},
props: {
object: {
type: Object,
required: true
}
},
data() {
return {
tableConfig: {
url: `/api/v1/perms/k8s-app-permissions/?user_id=${this.object.id}&draw=1`,
columns: ['name', 'users_amount', 'user_groups_amount', 'k8s_apps_amount', 'system_users_amount', 'is_valid', 'actions'],
columnsMeta: {
name: {
formatterArgs: {
route: 'KubernetesAppPermissionDetail'
}
},
users_amount: {
label: this.$t('users.Users')
},
user_groups_amount: {
label: this.$t('users.UserGroups')
},
k8s_apps_amount: {
label: this.$t('perms.KubernetesApp')
},
system_users_amount: {
label: this.$t('assets.SystemUsers')
},
actions: {
formatterArgs: {
updateRoute: 'KubernetesAppPermissionUpdate',
performDelete: ({ row, col }) => {
const id = row.id
const url = `/api/v1/perms/k8s-app-permissions/${id}/?user_id=${this.object.id}&draw=1`
return this.$axios.delete(url)
}
}
}
}
},
headerActions: {
hasLeftActions: false,
hasImport: false,
hasExport: false
}
}
}
}
</script>
<style scoped>
</style>

View File

@@ -13,6 +13,8 @@ import UserGrantedAssets from './UserGrantedAssets'
import UserGrantedRemoteApps from './UserGrantedRemoteApps'
import UserRemoteAppPermissionRules from './UserRemoteAppPermissionRules'
import UserGrantedDatabases from './UserGrantedDatabases'
import UserGrantedK8Ss from './UserGrantedK8Ss'
import UserK8SPermissionRules from './UserK8SPermissionRules'
import UserDatabasePermissionRules from './UserDatabasePermissionRules'
import UserInfo from './UserInfo'
@@ -25,7 +27,9 @@ export default {
UserGrantedRemoteApps,
UserRemoteAppPermissionRules,
UserGrantedDatabases,
UserDatabasePermissionRules
UserDatabasePermissionRules,
UserK8SPermissionRules,
UserGrantedK8Ss
},
data() {
const vm = this
@@ -65,6 +69,14 @@ export default {
{
title: this.$t('users.tabs.databasePermissionRules'),
name: 'UserDatabasePermissionRules'
},
{
title: this.$t('users.tabs.grantedK8Ss'),
name: 'UserGrantedK8Ss'
},
{
title: this.$t('users.tabs.k8sPermissionRules'),
name: 'UserK8SPermissionRules'
}
]
}