package service import ( "fmt" "github.com/jumpserver/koko/pkg/logger" "github.com/jumpserver/koko/pkg/model" ) func GetSystemUserAssetAuthInfo(systemUserID, assetID string) (info model.SystemUserAuthInfo) { Url := fmt.Sprintf(SystemUserAssetAuthURL, systemUserID, assetID) _, err := authClient.Get(Url, &info) if err != nil { logger.Errorf("Get system user %s asset %s auth info failed", systemUserID, assetID) } return } func GetSystemUserFilterRules(systemUserID string) (rules []model.SystemUserFilterRule, err error) { /*[ { "id": "12ae03a4-81b7-43d9-b356-2db4d5d63927", "org_id": "", "type": { "value": "command", "display": "命令" }, "priority": 50, "content": "reboot\r\nrm", "action": { "value": 0, "display": "拒绝" }, "comment": "", "date_created": "2019-04-29 11:32:12 +0800", "date_updated": "2019-04-29 11:32:12 +0800", "created_by": "Administrator", "filter": "de7693ca-75d5-4639-986b-44ed390260a0" }, { "id": "c1fe1ebf-8fdc-4477-b2cf-dd9bc12de832", "org_id": "", "type": { "value": "regex", "display": "正则表达式" }, "priority": 49, "content": "shutdown|echo|df", "action": { "value": 1, "display": "允许" }, "comment": "", "date_created": "2019-04-29 11:32:39 +0800", "date_updated": "2019-04-29 11:32:50 +0800", "created_by": "Administrator", "filter": "de7693ca-75d5-4639-986b-44ed390260a0" } ]`*/ Url := fmt.Sprintf(SystemUserCmdFilterRulesListURL, systemUserID) _, err = authClient.Get(Url, &rules) if err != nil { logger.Errorf("Get system user %s filter rule failed", systemUserID) } return } func GetSystemUser(systemUserID string) (info model.SystemUser) { Url := fmt.Sprintf(SystemUserDetailURL, systemUserID) _, err := authClient.Get(Url, &info) if err != nil { logger.Errorf("Get system user %s failed", systemUserID) } return } func GetAsset(assetID string) (asset model.Asset) { Url := fmt.Sprintf(AssetDetailURL, assetID) _, err := authClient.Get(Url, &asset) if err != nil { logger.Errorf("Get Asset %s failed\n", assetID) } return } func GetDomainWithGateway(gID string) (domain model.Domain) { url := fmt.Sprintf(DomainDetailURL, gID) _, err := authClient.Get(url, &domain) if err != nil { logger.Errorf("Get domain %s failed: %s", gID, err) } return } func GetTokenAsset(token string) (tokenUser model.TokenUser) { Url := fmt.Sprintf(TokenAssetURL, token) _, err := authClient.Get(Url, &tokenUser) if err != nil { logger.Error("Get Token Asset info failed: ", err) } return }