bastion_sso/src/api/servers.ts

92 lines
3.8 KiB
TypeScript

import request from '@/axios'
export const serversApi = {
list(params: Record<string, unknown> = {}) {
return request.get('/servers', { params })
},
create(data: Record<string, unknown>) {
return request.post('/servers', data)
},
update(id: number, data: Record<string, unknown>) {
return request.put(`/servers/${id}`, data)
},
remove(id: number) {
return request.delete(`/servers/${id}`)
},
userPermissions(id: number, params: Record<string, unknown> = {}) {
return request.get(`/servers/${id}/user-permissions`, { params })
},
syncUserPermissions(id: number, users: Array<Record<string, unknown>>, partial = false) {
return request.put(`/servers/${id}/user-permissions`, { users, partial })
},
systemUsersMeta(id: number) {
return request.get(`/servers/${id}/system-users/meta`)
},
createSystemUser(id: number, data: Record<string, unknown>) {
return request.post(`/servers/${id}/system-users`, data)
},
removeSystemUser(id: number, username: string) {
return request.delete(`/servers/${id}/system-users/${encodeURIComponent(username)}`)
},
updateSystemUserPassword(id: number, username: string, data: Record<string, unknown>) {
return request.patch(`/servers/${id}/system-users/${encodeURIComponent(username)}/password`, data)
},
updateBoundSystemUserPassword(id: number, data: Record<string, unknown>) {
return request.patch(`/servers/${id}/bound-system-user/password`, data)
},
updateDefaultEnvironment(id: number, content: string) {
return request.put(`/servers/${id}/default-environment`, { content })
},
updateAllUserEnvironments(id: number, content: string) {
return request.put(`/servers/${id}/system-users/environment`, { content })
},
updateDefaultUserGroups(id: number, groups: string[]) {
return request.put(`/servers/${id}/default-user-groups`, { groups })
},
userEnvironment(id: number, username: string) {
return request.get(`/servers/${id}/system-users/${encodeURIComponent(username)}/environment`)
},
updateUserEnvironment(id: number, username: string, content: string) {
return request.put(`/servers/${id}/system-users/${encodeURIComponent(username)}/environment`, { content })
},
createSystemGroup(id: number, data: Record<string, unknown>) {
return request.post(`/servers/${id}/system-groups`, data)
},
removeSystemGroup(id: number, groupname: string) {
return request.delete(`/servers/${id}/system-groups/${encodeURIComponent(groupname)}`)
},
syncSystemUserGroups(id: number, username: string, groups: string[], mode = 'replace') {
return request.put(`/servers/${id}/system-users/${encodeURIComponent(username)}/groups`, { groups, mode })
},
useResource(id: number, data: Record<string, unknown>) {
return request.post(`/servers/${id}/use`, data)
},
opsMeta() {
return request.get('/ops-clients/meta')
},
createOpsProtocol(data: Record<string, unknown>) {
return request.post('/ops-clients/protocols', data)
},
updateOpsProtocol(id: number, data: Record<string, unknown>) {
return request.put(`/ops-clients/protocols/${id}`, data)
},
removeOpsProtocol(id: number) {
return request.delete(`/ops-clients/protocols/${id}`)
},
createOpsSoftware(protocolId: number, data: Record<string, unknown>) {
return request.post(`/ops-clients/protocols/${protocolId}/softwares`, data)
},
updateOpsSoftware(id: number, data: Record<string, unknown>) {
return request.put(`/ops-clients/softwares/${id}`, data)
},
removeOpsSoftware(id: number) {
return request.delete(`/ops-clients/softwares/${id}`)
},
saveOpsPreferences(items: Array<Record<string, unknown>>) {
return request.put('/ops-clients/preferences', { items })
},
generateOpsLink(data: Record<string, unknown>) {
return request.post('/ops-clients/link', data)
},
}