connectionmanager

package
v2.42.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 10, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessRoles

type AccessRoles struct {
	ID    string    `json:"id"`
	Name  string    `json:"name"`
	Added time.Time `json:"added"`
}

AccessRoles access roles definition.

type Connection

type Connection struct {
	ID                string                              `json:"id,omitempty"`
	ProxyID           string                              `json:"proxy_id,omitempty"`
	Type              string                              `json:"type,omitempty"`
	Mode              string                              `json:"mode,omitempty"`
	UserAgent         string                              `json:"user_agent,omitempty"`
	AuthMethod        []string                            `json:"authentication_method,omitempty"`
	User              ConnectionUser                      `json:"user,omitempty"`
	UserRoles         []ConnectionRole                    `json:"user_roles,omitempty"`
	UserData          *rolestore.User                     `json:"user_data,omitempty"`
	TargetHost        ConnectionHost                      `json:"target_host,omitempty"`
	TargetHostAddress string                              `json:"target_host_address,omitempty"`
	TargetHostAccount string                              `json:"target_host_account,omitempty"`
	TargetHostRoles   []ConnectionRole                    `json:"target_host_roles,omitempty"`
	TargetHostData    *hoststore.Host                     `json:"target_host_data,omitempty"`
	TargetNetworkData *networkaccessmanager.NetworkTarget `json:"target_network_data,omitempty"`
	TargetAPIData     *apiproxy.ApiTarget                 `json:"target_api_data,omitempty"`
	RemoteAddress     string                              `json:"remote_address,omitempty"`
	Connected         string                              `json:"connected,omitempty"`
	Disconnected      string                              `json:"disconnected,omitempty"`
	Duration          int32                               `json:"duration,omitempty"`
	Status            string                              `json:"status,omitempty"`
	LastActivity      string                              `json:"last_activity,omitempty"`
	BytesIn           int64                               `json:"bytes_in,omitempty"`
	BytesOut          int64                               `json:"bytes_out,omitempty"`
	ForceDisconnect   string                              `json:"force_disconnect,omitempty"`
	TerminationReason string                              `json:"termination_reason,omitempty"`
	Created           string                              `json:"created,omitempty"`
	Updated           string                              `json:"updated,omitempty"`
	UpdatedBy         string                              `json:"updated_by,omitempty"`
	AuditEnabled      bool                                `json:"audit_enabled,omitempty"`
	TrailID           string                              `json:"trail_id,omitempty"`
	TrailRemoved      bool                                `json:"trail_removed,omitempty"`
	IndexStatus       string                              `json:"index_status,omitempty"`
	AccessGroupID     string                              `json:"access_group_id,omitempty"`
	Keywords          string                              `json:"keywords,omitempty"`
	SessionID         string                              `json:"session_id,omitempty"`
	AccessRoles       []AccessRoles                       `json:"access_roles,omitempty"`
	Tags              []string                            `json:"tags,omitempty"`
}

Connection connection struct definition.

type ConnectionCount

type ConnectionCount struct {
	Count int `json:"count"`
}

ConnectionCount ueba connection count response definition.

type ConnectionHost

type ConnectionHost struct {
	ID         string `json:"id,omitempty"`
	CommonName string `json:"common_name,omitempty"`
}

ConnectionHost connection host definition.

type ConnectionManager

type ConnectionManager struct {
	// contains filtered or unexported fields
}

ConnectionManager is a connection manager client instance.

func New

New connection manager client constructor.

func (*ConnectionManager) CreateSessionForFileDownload

func (c *ConnectionManager) CreateSessionForFileDownload(connID, chanID, fileID string) (DownloadSessionID, error)

CreateSessionForFileDownload create session id for trail stored file download.

func (*ConnectionManager) CreateSessionForTrailLogDownload

func (c *ConnectionManager) CreateSessionForTrailLogDownload(connID, chanID string) (DownloadSessionID, error)

CreateSessionForTrailLogDownload create session id for trail log download.

func (*ConnectionManager) CreateSessionForUebaScriptDownload

func (c *ConnectionManager) CreateSessionForUebaScriptDownload() (response.Identifier, error)

MARK: UEBA Setup CreateSessionForUebaScriptDownload create session id for ueba setup script download.

func (*ConnectionManager) CreateUebaAnomalySettings

func (c *ConnectionManager) CreateUebaAnomalySettings(settings UebaAnomalySettings) error

CreateUebaAnomalySettings create Ueba anomaly settings.

func (*ConnectionManager) CreateUebaDataset

func (c *ConnectionManager) CreateUebaDataset(dataset *Dataset) (response.Identifier, error)

CreateUebaDataset create a new dataset.

func (*ConnectionManager) DeleteUebaDataset

func (c *ConnectionManager) DeleteUebaDataset(datasetID string) error

DeleteUebaDataset delete ueba dataset.

func (*ConnectionManager) DownloadTrailLog

func (c *ConnectionManager) DownloadTrailLog(connID, chanID, sessionID, filename string, opts ...filters.Option) error

DownloadTrailLog download trail log of audited connection channel.

func (*ConnectionManager) DownloadTrailStoredFile

func (c *ConnectionManager) DownloadTrailStoredFile(connID, chanID, fileID, sessionID, filename string) error

DownloadTrailStoredFile download trail stored file transferred within audited connection channel,

func (*ConnectionManager) DownloadUebaScript

func (c *ConnectionManager) DownloadUebaScript(sessionID, filename string) error

DownloadUebaScript download ueba setup script.

func (*ConnectionManager) GetAccessRoles

func (c *ConnectionManager) GetAccessRoles(connID string) (*response.ResultSet[ConnectionPermission], error)

GetAccessRoles get access roles for connection by id. Note, the v1 endpoint doesn't return the count as part of the response body, this will change with v2. Until then, we will handle it internally within the SDK.

func (*ConnectionManager) GetConnection

func (c *ConnectionManager) GetConnection(connID string) (*Connection, error)

GetConnection get connection by id.

func (*ConnectionManager) GetConnectionTags

func (c *ConnectionManager) GetConnectionTags(opts ...filters.Option) (*response.ResultSet[string], error)

GetConnectionTags get connection tags.

func (*ConnectionManager) GetConnections

func (c *ConnectionManager) GetConnections(opts ...filters.Option) (*response.ResultSet[Connection], error)

MARK: Connections GetConnections get connections.

func (*ConnectionManager) GetUebaAnomalySettings

func (c *ConnectionManager) GetUebaAnomalySettings() (UebaAnomalySettings, error)

GetUebaAnomalySettings get ueba anomaly settings.

func (*ConnectionManager) GetUebaConfigurations

func (c *ConnectionManager) GetUebaConfigurations() (*UebaConfigurations, error)

MARK: UEBA Management GetUebaConfigurations get ueba configurations.

func (*ConnectionManager) GetUebaConnectionCounts

func (c *ConnectionManager) GetUebaConnectionCounts(timeRange TimeRange) (ConnectionCount, error)

GetUebaConnectionCounts get number of connections for dataset.

func (*ConnectionManager) GetUebaDataset

func (c *ConnectionManager) GetUebaDataset(datasetID string) (*Dataset, error)

GetUebaDataset get ueba dataset by id.

func (*ConnectionManager) GetUebaDatasets

func (c *ConnectionManager) GetUebaDatasets() (*response.ResultSet[Dataset], error)

MARK: UEBA Train GetUebaDatasets get dataset list for ueba.

func (*ConnectionManager) GetUebaInternalStatus

func (c *ConnectionManager) GetUebaInternalStatus() (UebaInternalStatus, error)

GetUebaInternalStatus get ueba internal status.

func (*ConnectionManager) GetUebaStatus

func (c *ConnectionManager) GetUebaStatus() (*response.ServiceStatus, error)

MARK: UEBA Status GetUebaStatus get ueba service status.

func (*ConnectionManager) GrantAccessRole

func (c *ConnectionManager) GrantAccessRole(connID, roleID string) error

GrantAccessRole grant a role permission for a connection.

func (*ConnectionManager) RevokeAccessRole

func (c *ConnectionManager) RevokeAccessRole(connID, roleID string) error

RevokeAccessRole revoke a permission for a role from a connection.

func (*ConnectionManager) RevokeAccessRoleFromAllConnections

func (c *ConnectionManager) RevokeAccessRoleFromAllConnections(roleID string) error

RevokeAccessRoleFromAllConnections revoke permissions for a role from all connections.

func (*ConnectionManager) SearchConnections

func (c *ConnectionManager) SearchConnections(search *ConnectionSearch, opts ...filters.Option) (*response.ResultSet[Connection], error)

SearchConnections search for connections.

func (*ConnectionManager) SetUebaConfigurations

func (c *ConnectionManager) SetUebaConfigurations(configurations *UebaConfigurations) error

SetUebaConfigurations set ueba configurations.

func (*ConnectionManager) StartUebaAnalyzing

func (c *ConnectionManager) StartUebaAnalyzing(datasetID string) error

StartUebaAnalyzing start ueba analyzing connections with a saved dataset.

func (*ConnectionManager) Status

MARK: Status Status get connection manager microservice status.

func (*ConnectionManager) StopUebaAnalyzing

func (c *ConnectionManager) StopUebaAnalyzing() error

StopUebaAnalyzing stop ueba analyzing connection anomalies.

func (*ConnectionManager) TerminateConnection

func (c *ConnectionManager) TerminateConnection(connID string) error

TerminateConnection terminate connection by id.

func (*ConnectionManager) TerminateConnectionsByHost

func (c *ConnectionManager) TerminateConnectionsByHost(hostID string) error

MARK: Terminate TerminateConnectionsByHost terminate connections from host.

func (*ConnectionManager) TerminateConnectionsByUser

func (c *ConnectionManager) TerminateConnectionsByUser(userID string) error

TerminateConnectionsByUser terminate connection(s) of a user

func (*ConnectionManager) TrainUebaDataset

func (c *ConnectionManager) TrainUebaDataset(datasetID string, opts ...filters.Option) (ConnectionCount, error)

TrainUebaDataset train or retrain ueba dataset.

func (*ConnectionManager) UpdateConnectionTags

func (c *ConnectionManager) UpdateConnectionTags(tags []string, connectionID string) error

UpdateConnectionTags update connection tags.

func (*ConnectionManager) UpdateUebaDataset

func (c *ConnectionManager) UpdateUebaDataset(dataset *Dataset, datasetID string) error

UpdateUebaDataset update ueba dataset.

type ConnectionPermission

type ConnectionPermission struct {
	ID    string    `json:"id"`
	Name  string    `json:"name"`
	Added time.Time `json:"added"`
}

ConnectionPermission connection access permission definition.

type ConnectionRole

type ConnectionRole struct {
	ID   string `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

ConnectionRole connection role definition.

type ConnectionSearch

type ConnectionSearch struct {
	ID                   []string         `json:"id,omitempty"`
	ProxyID              []string         `json:"proxy_id,omitempty"`
	Type                 []string         `json:"type,omitempty"`
	Mode                 []string         `json:"mode,omitempty"`
	UserAgent            []string         `json:"user_agent,omitempty"`
	AuthMethod           []string         `json:"authentication_method,omitempty"`
	UserID               []string         `json:"user_id,omitempty"`
	UserDisplayName      []string         `json:"user_display_name,omitempty"`
	UserRoles            []string         `json:"user_roles,omitempty"`
	TargetHost           []string         `json:"target_host_id,omitempty"`
	TargetHostCommonName []string         `json:"target_host_common_name,omitempty"`
	TargetHostAddress    []string         `json:"target_host_address,omitempty"`
	TargetHostAccount    []string         `json:"target_host_account,omitempty"`
	TargetHostRoles      []string         `json:"target_host_roles,omitempty"`
	RemoteAddress        []string         `json:"remote_address,omitempty"`
	Connected            *TimestampSearch `json:"connected,omitempty"`
	Disconnected         *TimestampSearch `json:"disconnected,omitempty"`
	Status               []string         `json:"status,omitempty"`
	LastActivity         *TimestampSearch `json:"last_activity,omitempty"`
	ForceDisconnect      []string         `json:"force_disconnect,omitempty"`
	KeyWords             string           `json:"keywords,omitempty"`
	AccessRoles          []string         `json:"access_roles,omitempty"`
	HasAccessRoles       *bool            `json:"has_access_roles,omitempty"`
	SessionID            string           `json:"session_id,omitempty"`
	Tags                 []string         `json:"tags,omitempty"`
}

ConnectionSearch connection search request definition.

type ConnectionTagsParams

type ConnectionTagsParams struct {
	Query string `url:"query,omitempty"`
}

ConnectionTagsParams query parameter definition.

type ConnectionUser

type ConnectionUser struct {
	ID          string `json:"id,omitempty"`
	DisplayName string `json:"display_name,omitempty"`
}

ConnectionUser connection user definition.

type Dataset

type Dataset struct {
	ID                         string               `json:"id"`
	LastTraining               *time.Time           `json:"last_training,omitempty"`
	IsActive                   bool                 `json:"is_active"`
	UseForInferenceOnceTrained bool                 `json:"use_for_inference_once_trained"`
	TimeRangeSettings          *TimeRange           `json:"time_range_settings,omitempty"`
	TrainingResults            []UebaTrainingResult `json:"training_results"`
	Created                    *time.Time           `json:"created,omitempty"`
	CreatedBy                  string               `json:"created_by,omitempty"`
	Updated                    *time.Time           `json:"updated,omitempty"`
	UpdatedBy                  string               `json:"updated_by,omitempty"`
	Comment                    string               `json:"comment,omitempty"`
}

Dataset ueba dataset definition.

type DownloadSessionID

type DownloadSessionID struct {
	SessionID string `json:"session_id"`
}

DownloadSessionID download sessions id response definition.

type DownloadTrailLogParams

type DownloadTrailLogParams struct {
	Format string `url:"format,omitempty"`
}

DownloadTrailLogParams query parameter definition.

type ExcludeTimeRange

type ExcludeTimeRange struct {
	Start time.Time `json:"start"`
	End   time.Time `json:"end"`
}

ExcludeTimeRange exclude time range definition.

type Histogram

type Histogram struct {
	Hist     []float32 `json:"hist"`
	BinEdges []float32 `json:"bin_edges"`
}

Histogram ueba histogram definition.

type TimeRange

type TimeRange struct {
	Start   *time.Time         `json:"start,omitempty"`
	End     *time.Time         `json:"end,omitempty"`
	Exclude []ExcludeTimeRange `json:"exclude,omitempty"`
}

TimeRange time range definition.

type TimestampSearch

type TimestampSearch struct {
	Start string
	End   string
}

TimestampSearch timestamp search request definition.

type UebaAnomalySettings

type UebaAnomalySettings struct {
	Action    string  `json:"action"`
	Threshold float32 `json:"threshold"`
}

UebaAnomalySettings ueba anomaly settings definition.

type UebaConfigurations

type UebaConfigurations struct {
	Address          string                          `json:"address"`
	TrustAnchors     string                          `json:"trust_anchors"`
	TrustAnchorsInfo []hoststore.HostCertificateInfo `json:"trust_anchors_info,omitempty"`
}

UebaConfigurations ueba configurations definition.

type UebaInternalStatus

type UebaInternalStatus struct {
	TrainingStatus  string              `json:"training_status"`
	InferenceStatus string              `json:"inference_status"`
	DatasetID       string              `json:"dataset_id"`
	Instances       []UebaModelInstance `json:"instances"`
}

UebaInternalStatus ueba internal status definition.

type UebaModelInstance

type UebaModelInstance struct {
	ID                string `json:"id"`
	FeatureConfigName string `json:"feature_config_name"`
	Status            string `json:"status"`
	Created           string `json:"created"`
}

UebaModelInstance ueba model instance definition.

type UebaTrainingParams

type UebaTrainingParams struct {
	SetActiveAfterTraining bool `url:"set_active_after_training"`
}

UebaTrainingParams query parameter definition.

type UebaTrainingResult

type UebaTrainingResult struct {
	DatasetID                  string    `json:"dataset_id"`
	Created                    time.Time `json:"created"`
	FeatureConfigName          string    `json:"feature_config_name"`
	Status                     string    `json:"status"`
	ErrorCode                  string    `json:"error_code"`
	ErrorDetails               string    `json:"error_details"`
	NumConnections             int       `json:"num_connections"`
	Mean                       float32   `json:"mean"`
	Std                        float32   `json:"std"`
	Quantile99                 float32   `json:"quantile_99"`
	Quantile999                float32   `json:"quantile_999"`
	TrainingLog                string    `json:"training_log"`
	TrainingDatasetLoss        []float32 `json:"training_dataset_loss"`
	ValidationDatasetLoss      []float32 `json:"validation_dataset_loss"`
	ValidationDatasetHistogram Histogram `json:"validation_dataset_histogram"`
}

UebaTrainingResult ueba training result definition.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL