Documentation
¶
Index ¶
- Constants
- Variables
- func AddScheduledTask(ctx context.Context, req AddScheduledTaskRequest) error
- func DeleteCustomSchedule(ctx context.Context, id int64) error
- func DeleteIntegration(ctx context.Context, pgClient *postgresqlDb.Queries, integrationID int32) error
- func DeleteRegistry(ctx context.Context, pgClient *postgresqlDb.Queries, r int32) error
- func DeleteRegistryAccount(ctx context.Context, nodeIDs []string) error
- func DigestToID(digest string) (string, string)
- func GetAESValueForEncryption(ctx context.Context, pgClient *postgresqlDb.Queries) (json.RawMessage, error)
- func GetAPIToken(namespace string, apiToken uuid.UUID) string
- func GetDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries, companyID int32) (*postgresqlDb.UserGroup, error)
- func GetDefaultUserGroupMap(ctx context.Context, pgClient *postgresqlDb.Queries, companyID int32) (map[string]string, error)
- func GetIntegration(ctx context.Context, pgClient *postgresqlDb.Queries, integrationID int32) (postgresqlDb.Integration, bool, error)
- func GetManagementConsoleURL(ctx context.Context, pgClient *postgresqlDb.Queries) (string, error)
- func GetRegistryPgIDs(ctx context.Context, nodeIDs []string) ([]int64, error)
- func GetScheduledTask(ctx context.Context) ([]postgresqlDb.Scheduler, error)
- func InitializeAESSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func InitializeScheduledTasks(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func IsFreshSetup(ctx context.Context) (bool, error)
- func IsOnboardingRequired(ctx context.Context) bool
- func SetConsoleIDSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func SetScanResultsDeletionSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func UpdateScheduledTask(ctx context.Context, id int64, updateScheduledTask UpdateScheduledTaskRequest) error
- func UpsertCloudComplianceNode(ctx context.Context, nodeDetails map[string]interface{}, parentNodeID string) error
- type APIAuthRequest
- type APIToken
- type APITokenResponse
- type AddGenerativeAiBedrockIntegration
- func (a AddGenerativeAiBedrockIntegration) GetFields() interface{}
- func (a AddGenerativeAiBedrockIntegration) GetIntegrationType() string
- func (a AddGenerativeAiBedrockIntegration) GetLabel() string
- func (a AddGenerativeAiBedrockIntegration) IntegrationExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
- type AddGenerativeAiIntegrationRequest
- type AddGenerativeAiOpenAIIntegration
- func (a AddGenerativeAiOpenAIIntegration) GetFields() interface{}
- func (a AddGenerativeAiOpenAIIntegration) GetIntegrationType() string
- func (a AddGenerativeAiOpenAIIntegration) GetLabel() string
- func (a AddGenerativeAiOpenAIIntegration) IntegrationExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
- type AddScheduledTaskRequest
- type AgentID
- type AgentPluginDisable
- type AgentPluginEnable
- type AgentUpgrade
- type BasicNode
- type BulkDeleteScansRequest
- type CloudAccountRefreshReq
- type CloudCompliance
- type CloudComplianceBenchmark
- type CloudComplianceScanDetails
- type CloudComplianceScanListResp
- type CloudComplianceScanResult
- type CloudNode
- type CloudNodeAccountInfo
- func (CloudNodeAccountInfo) ExtendedField() string
- func (v CloudNodeAccountInfo) GetCategory() string
- func (CloudNodeAccountInfo) GetJSONCategory() string
- func (v CloudNodeAccountInfo) GetPassStatus() []string
- func (v CloudNodeAccountInfo) NodeType() string
- func (v CloudNodeAccountInfo) ScanResultType() string
- func (v CloudNodeAccountInfo) ScanType() utils.Neo4jScanType
- type CloudNodeAccountRegisterReq
- type CloudNodeAccountRegisterResp
- type CloudNodeAccountRegisterRespData
- type CloudNodeAccountsListReq
- type CloudNodeAccountsListResp
- type CloudNodeCloudtrailTrail
- type CloudNodeComplianceControl
- type CloudNodeControlReq
- type CloudNodeControlResp
- type CloudNodeEnableDisableReq
- type CloudNodeProvidersListReq
- type CloudNodeProvidersListResp
- type CloudResource
- type Company
- func (c *Company) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.Company, error)
- func (c *Company) CreateDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.UserGroup, error)
- func (c *Company) GetDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.UserGroup, error)
- func (c *Company) GetDefaultUserGroupMap(ctx context.Context, pgClient *postgresqlDb.Queries) (map[string]string, error)
- type Compliance
- type ComplianceAdditionalInfo
- type ComplianceBenchmarkTypes
- type ComplianceRule
- type ComplianceScanInfo
- type ComplianceScanResult
- type ComplianceScanStatusResp
- type ComplianceScanTriggerReq
- type ConfigIDPathReq
- type Connection
- type ConnectionQueryResp
- type Container
- type ContainerImage
- type DeleteRegistryBulkReq
- type DownloadReportResponse
- type DownloadScanResultsResponse
- type EmailConfigurationAdd
- type EmailConfigurationResp
- type EmailConfigurationSES
- type EmailConfigurationSMTP
- type EndpointID
- type ErrorResponse
- type ExportReport
- type FetchWindow
- type FiltersReq
- type FiltersResult
- type GenerateReportReq
- type GenerateReportResp
- type GenerativeAiIntegrationCloudPostureRequest
- type GenerativeAiIntegrationKubernetesPostureRequest
- type GenerativeAiIntegrationLinuxPostureRequest
- type GenerativeAiIntegrationListRequest
- type GenerativeAiIntegrationListResponse
- type GenerativeAiIntegrationMalwareRequest
- type GenerativeAiIntegrationMessageResponse
- type GenerativeAiIntegrationRequest
- type GenerativeAiIntegrationRequestCommon
- type GenerativeAiIntegrationSecretRequest
- type GenerativeAiIntegrationVulnerabilityRequest
- type GetAuditLogsRequest
- type GetAuditLogsRow
- type GraphResult
- type Host
- type Identifiable
- type ImageStub
- type IngestedContainerImage
- type InitAgentReq
- type IntegrationAddReq
- type IntegrationFilters
- type IntegrationIDPathReq
- type IntegrationListReq
- type IntegrationListResp
- type IntegrationUpdateReq
- type InviteUserRequest
- type InviteUserResponse
- type KubernetesCluster
- type ListAgentVersionResp
- type LoginRequest
- type LoginResponse
- type Malware
- type MalwareRule
- type MalwareScanResult
- type MalwareScanResultClass
- type MalwareScanResultRules
- type MalwareScanTriggerReq
- type MessageResponse
- type Metadata
- type NodeIdentifier
- type NodesInScanResultRequest
- type PasswordResetRequest
- type PasswordResetVerifyRequest
- type PendingCloudComplianceScan
- type Pod
- type PostureProvider
- type PresentationContext
- type Process
- type RegisterInvitedUserRequest
- type RegistryAccount
- type RegistryAddReq
- type RegistryCountResp
- type RegistryGCRAddReq
- type RegistryIDPathReq
- type RegistryImage
- type RegistryImageListReq
- type RegistryImageStubsReq
- type RegistryImages
- type RegistryImagesReq
- type RegistryListReq
- type RegistryListResp
- type RegistrySummaryAllResp
- type RegistryTypeReq
- type RegistryUpdateReq
- type ReportReq
- type ResponseAccessToken
- type SbomRequest
- type SbomResponse
- type ScanActionRequest
- type ScanCompareReq
- type ScanCompareRes
- type ScanCompareResCloudCompliance
- type ScanCompareResCompliance
- type ScanCompareResMalware
- type ScanCompareResSecret
- type ScanCompareResVulnerability
- type ScanFilter
- type ScanInfo
- type ScanListReq
- type ScanListResp
- type ScanReportFieldsResponse
- type ScanResultBasicNode
- type ScanResultsActionRequest
- type ScanResultsCommon
- type ScanResultsMaskRequest
- type ScanResultsReq
- type ScanStatus
- type ScanStatusReq
- type ScanStatusResp
- type ScanTriggerCommon
- type ScanTriggerResp
- type ScheduleJobID
- type ScheduleTaskPayload
- type Secret
- type SecretRule
- type SecretScanResult
- type SecretScanResultRules
- type SecretScanTriggerReq
- type Setting
- type SettingUpdateRequest
- type SettingValue
- type SettingsResponse
- type StopScanRequest
- type Summary
- type TopologyDeltaReq
- type TopologyDeltaResponse
- type UpdateScheduledTaskRequest
- type UpdateUserIDRequest
- type UpdateUserPasswordRequest
- type UpdateUserRequest
- type User
- func (u *User) CompareHashAndPassword(ctx context.Context, pgClient *postgresqlDb.Queries, inputPassword string) (bool, error)
- func (u *User) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.User, error)
- func (u *User) CreateAPIToken(ctx context.Context, pgClient *postgresqlDb.Queries, roleID int32, ...) (*postgresqlDb.ApiToken, error)
- func (u *User) CreateAccessToken(tokenAuth *jwtauth.JWTAuth, grantType string) (string, string, error)
- func (u *User) CreateRefreshToken(tokenAuth *jwtauth.JWTAuth, accessTokenID string, grantType string) (string, error)
- func (u *User) Delete(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func (u *User) GetAccessToken(tokenAuth *jwtauth.JWTAuth, grantType string) (*ResponseAccessToken, error)
- func (u *User) LoadFromDBByEmail(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func (u *User) LoadFromDBByID(ctx context.Context, pgClient *postgresqlDb.Queries) error
- func (u *User) SetPassword(inputPassword string) error
- func (u *User) Update(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.User, error)
- func (u *User) UpdatePassword(ctx context.Context, pgClient *postgresqlDb.Queries) error
- type UserIDRequest
- type UserRegisterRequest
- type Vulnerability
- type VulnerabilityRule
- type VulnerabilityScanConfig
- type VulnerabilityScanConfigLanguage
- type VulnerabilityScanResult
- type VulnerabilityScanTriggerReq
Constants ¶
View Source
const ( PostureProviderAWS = "aws" PostureProviderAWSOrg = "aws_org" PostureProviderGCP = "gcp" PostureProviderGCPOrg = "gcp_org" PostureProviderAzure = "azure" PostureProviderLinux = "linux" PostureProviderKubernetes = "kubernetes" )
View Source
const ( GenerativeAiIntegrationExitMessage = "[TOAE_DONE]" CloudPostureQuery = "cloud_posture" LinuxPostureQuery = "linux_posture" KubernetesPostureQuery = "kubernetes_posture" VulnerabilityQuery = "vulnerability" SecretQuery = "secret" MalwareQuery = "malware" QueryTypeRemediation = "remediation" )
View Source
const ( ScanStatusSuccess = utils.ScanStatusSuccess ScanStatusStarting = utils.ScanStatusStarting ScanStatusInProgress = utils.ScanStatusInProgress )
View Source
const ( VulnerabilityScanCron = "0 0 0 * * 0" SecretScanCron = "0 0 0 * * 1" MalwareScanCron = "0 0 0 * * 2" ComplianceScanCron = "0 0 0 * * 3" CloudComplianceScanCron = "0 0 0 * * 4" )
View Source
const ( ConsoleURLSettingKey = "console_url" EmailConfigurationKey = "email_configuration" EmailSettingSES = "amazon_ses" EmailSettingSMTP = "smtp" InactiveNodesDeleteScanResultsKey = "inactive_delete_scan_results" ConsoleIDKey = "console_id" )
View Source
const ( AdminRole = "admin" GrantTypePassword = "password" GrantTypeAPIToken = "api_token" )
View Source
const (
DefaultUserGroup = "default"
)
Variables ¶
View Source
var ( ErrUserNotFound = errors.New("user not found") EULAResponse = MessageResponse{Message: constants.EndUserLicenceAgreement} )
View Source
var ( AccessTokenExpiry = time.Minute * 30 RefreshTokenExpiry = time.Hour * 26 )
View Source
var ( AiIntegrationTypeLabel = map[string]string{ constants.OpenAI: "OpenAI", constants.Bedrock: "Amazon Bedrock", } )
View Source
var SupportedPostureProviders = []string{PostureProviderAWS, PostureProviderGCP, PostureProviderAzure, PostureProviderLinux, PostureProviderKubernetes}
Functions ¶
func AddScheduledTask ¶
func AddScheduledTask(ctx context.Context, req AddScheduledTaskRequest) error
func DeleteIntegration ¶
func DeleteRegistry ¶
DeleteRegistry from DB
func DeleteRegistryAccount ¶
func DigestToID ¶
func GetAESValueForEncryption ¶
func GetAESValueForEncryption(ctx context.Context, pgClient *postgresqlDb.Queries) (json.RawMessage, error)
func GetDefaultUserGroup ¶
func GetDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries, companyID int32) (*postgresqlDb.UserGroup, error)
func GetDefaultUserGroupMap ¶
func GetIntegration ¶
func GetIntegration(ctx context.Context, pgClient *postgresqlDb.Queries, integrationID int32) (postgresqlDb.Integration, bool, error)
func GetManagementConsoleURL ¶
func GetRegistryPgIDs ¶
func GetScheduledTask ¶
func GetScheduledTask(ctx context.Context) ([]postgresqlDb.Scheduler, error)
func InitializeAESSetting ¶
func InitializeAESSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
func InitializeScheduledTasks ¶
func InitializeScheduledTasks(ctx context.Context, pgClient *postgresqlDb.Queries) error
func IsOnboardingRequired ¶
func SetConsoleIDSetting ¶
func SetConsoleIDSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
func SetScanResultsDeletionSetting ¶
func SetScanResultsDeletionSetting(ctx context.Context, pgClient *postgresqlDb.Queries) error
func UpdateScheduledTask ¶
func UpdateScheduledTask(ctx context.Context, id int64, updateScheduledTask UpdateScheduledTaskRequest) error
Types ¶
type APIAuthRequest ¶
type APIAuthRequest struct {
APIToken string `json:"api_token" validate:"required,api_token" required:"true"`
}
type APIToken ¶
type APIToken struct {
APIToken uuid.UUID `json:"api_token" required:"true"`
ID int64 `json:"id" required:"true"`
Name string `json:"name" required:"true"`
CompanyID int32 `json:"company_id" required:"true"`
RoleID int32 `json:"role_id" required:"true"`
GroupID int32 `json:"group_id" required:"true"`
CreatedByUserID int64 `json:"created_by_user_id" required:"true"`
CompanyNamespace string `json:"company_namespace" required:"true"`
}
func (*APIToken) Create ¶
func (a *APIToken) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.ApiToken, error)
type APITokenResponse ¶
type AddGenerativeAiBedrockIntegration ¶
type AddGenerativeAiBedrockIntegration struct {
AWSAccessKey string `json:"aws_access_key" validate:"omitempty,min=16,max=128"`
AWSSecretKey string `json:"aws_secret_key" validate:"omitempty,min=16,max=128"`
AWSRegion string `` /* 670-byte string literal not displayed */
UseIAMRole bool `json:"use_iam_role"`
ModelID string `` /* 490-byte string literal not displayed */
}
func (AddGenerativeAiBedrockIntegration) GetFields ¶
func (a AddGenerativeAiBedrockIntegration) GetFields() interface{}
func (AddGenerativeAiBedrockIntegration) GetIntegrationType ¶
func (a AddGenerativeAiBedrockIntegration) GetIntegrationType() string
func (AddGenerativeAiBedrockIntegration) GetLabel ¶
func (a AddGenerativeAiBedrockIntegration) GetLabel() string
func (AddGenerativeAiBedrockIntegration) IntegrationExists ¶
func (a AddGenerativeAiBedrockIntegration) IntegrationExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
type AddGenerativeAiOpenAIIntegration ¶
type AddGenerativeAiOpenAIIntegration struct {
APIKey string `json:"api_key" validate:"required" required:"true"`
ModelID string `json:"model_id" validate:"required,oneof=gpt-4" required:"true" enum:"gpt-4"`
}
func (AddGenerativeAiOpenAIIntegration) GetFields ¶
func (a AddGenerativeAiOpenAIIntegration) GetFields() interface{}
func (AddGenerativeAiOpenAIIntegration) GetIntegrationType ¶
func (a AddGenerativeAiOpenAIIntegration) GetIntegrationType() string
func (AddGenerativeAiOpenAIIntegration) GetLabel ¶
func (a AddGenerativeAiOpenAIIntegration) GetLabel() string
func (AddGenerativeAiOpenAIIntegration) IntegrationExists ¶
func (a AddGenerativeAiOpenAIIntegration) IntegrationExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
type AddScheduledTaskRequest ¶
type AddScheduledTaskRequest struct {
Action string `` /* 214-byte string literal not displayed */
Description string `json:"description"`
CronExpr string `json:"cron_expr"`
ScheduleTaskPayload
}
type AgentPluginDisable ¶
type AgentPluginEnable ¶
type AgentUpgrade ¶
type BulkDeleteScansRequest ¶
type BulkDeleteScansRequest struct {
ScanType string `` /* 177-byte string literal not displayed */
Filters reporters.FieldsFilters `json:"filters" required:"true"`
}
type CloudAccountRefreshReq ¶
type CloudAccountRefreshReq struct {
NodeIDs []string `json:"node_ids" validate:"required,gt=0" required:"true"`
}
func (*CloudAccountRefreshReq) GetCloudAccountRefresh ¶
func (c *CloudAccountRefreshReq) GetCloudAccountRefresh(ctx context.Context) ([]string, error)
func (*CloudAccountRefreshReq) SetCloudAccountRefresh ¶
func (c *CloudAccountRefreshReq) SetCloudAccountRefresh(ctx context.Context) error
type CloudCompliance ¶
type CloudCompliance struct {
Count int32 `json:"count,omitempty" required:"true"`
Reason string `json:"reason" required:"true"`
Resource string `json:"resource" required:"true"`
Status string `json:"status" required:"true"`
Region string `json:"region" required:"true"`
AccountID string `json:"account_id" required:"true"`
Group string `json:"group" required:"true"`
Service string `json:"service" required:"true"`
Title string `json:"title" required:"true"`
ComplianceCheckType string `json:"compliance_check_type" required:"true"`
CloudProvider string `json:"cloud_provider" required:"true"`
NodeName string `json:"node_name" required:"true"`
NodeID string `json:"node_id" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
Type string `json:"type" required:"true"`
ControlID string `json:"control_id" required:"true"`
Description string `json:"description" required:"true"`
Severity string `json:"severity" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
}
func (CloudCompliance) ExtendedField ¶
func (CloudCompliance) ExtendedField() string
func (CloudCompliance) GetCategory ¶
func (v CloudCompliance) GetCategory() string
func (CloudCompliance) GetJSONCategory ¶
func (CloudCompliance) GetJSONCategory() string
func (CloudCompliance) NodeType ¶
func (CloudCompliance) NodeType() string
type CloudComplianceBenchmark ¶
type CloudComplianceBenchmark struct {
ID string `json:"id"`
ComplianceType string `json:"compliance_type"`
Controls []string `json:"controls"`
}
func GetActiveCloudControls ¶
type CloudComplianceScanDetails ¶
type CloudComplianceScanDetails struct {
ScanID string `json:"scan_id"`
ScanTypes []string `json:"scan_types"`
AccountID string `json:"account_id"`
Benchmarks []CloudComplianceBenchmark `json:"benchmarks"`
StopRequested bool `json:"stop_requested"`
}
type CloudComplianceScanListResp ¶
type CloudComplianceScanListResp struct {
ScansInfo []ComplianceScanInfo `json:"scans_info" required:"true"`
}
type CloudComplianceScanResult ¶
type CloudComplianceScanResult struct {
ScanResultsCommon
ComplianceAdditionalInfo
Compliances []CloudCompliance `json:"compliances" required:"true"`
}
type CloudNode ¶
type CloudNode struct {
ID string `json:"node_id" required:"true"`
Name string `json:"node_name" required:"true"`
CloudProvider string `json:"cloud_provider" required:"true"`
CloudCompliancesCount int64 `json:"cloud_compliances_count" required:"true"`
CloudComplianceScanStatus string `json:"cloud_compliance_scan_status" required:"true"`
CloudComplianceLatestScanID string `json:"cloud_compliance_latest_scan_id" required:"true"`
}
func (CloudNode) ExtendedField ¶
func (CloudNode) GetCategory ¶
func (CloudNode) GetJSONCategory ¶
type CloudNodeAccountInfo ¶
type CloudNodeAccountInfo struct {
NodeID string `json:"node_id"`
NodeName string `json:"node_name"`
CloudProvider string `json:"cloud_provider"`
CompliancePercentage float64 `json:"compliance_percentage"`
Active bool `json:"active"`
LastScanID string `json:"last_scan_id"`
LastScanStatus string `json:"last_scan_status"`
ScanStatusMap map[string]int64 `json:"scan_status_map"`
Version string `json:"version"`
}
func (CloudNodeAccountInfo) ExtendedField ¶
func (CloudNodeAccountInfo) ExtendedField() string
func (CloudNodeAccountInfo) GetCategory ¶
func (v CloudNodeAccountInfo) GetCategory() string
func (CloudNodeAccountInfo) GetJSONCategory ¶
func (CloudNodeAccountInfo) GetJSONCategory() string
func (CloudNodeAccountInfo) GetPassStatus ¶
func (v CloudNodeAccountInfo) GetPassStatus() []string
func (CloudNodeAccountInfo) NodeType ¶
func (v CloudNodeAccountInfo) NodeType() string
func (CloudNodeAccountInfo) ScanResultType ¶
func (v CloudNodeAccountInfo) ScanResultType() string
func (CloudNodeAccountInfo) ScanType ¶
func (v CloudNodeAccountInfo) ScanType() utils.Neo4jScanType
type CloudNodeAccountRegisterReq ¶
type CloudNodeAccountRegisterReq struct {
NodeID string `json:"node_id" required:"true"`
CloudAccount string `json:"cloud_account" required:"true"`
CloudProvider string `json:"cloud_provider" required:"true" enum:"aws,gcp,azure"`
MonitoredAccountIDs map[string]string `json:"monitored_account_ids"`
OrgAccountID string `json:"org_acc_id"`
Version string `json:"version"`
}
type CloudNodeAccountRegisterResp ¶
type CloudNodeAccountRegisterResp struct {
Data CloudNodeAccountRegisterRespData `json:"data"`
}
type CloudNodeAccountRegisterRespData ¶
type CloudNodeAccountRegisterRespData struct {
Scans map[string]CloudComplianceScanDetails `json:"scans"`
CloudtrailTrails []CloudNodeCloudtrailTrail `json:"cloudtrail_trails"`
Refresh string `json:"refresh"`
LogAction ctl.Action `json:"log_action"`
}
type CloudNodeAccountsListReq ¶
type CloudNodeAccountsListReq struct {
CloudProvider string `json:"cloud_provider"`
Window FetchWindow `json:"window" required:"true"`
}
type CloudNodeAccountsListResp ¶
type CloudNodeAccountsListResp struct {
CloudNodeAccountInfo []CloudNodeAccountInfo `json:"cloud_node_accounts_info" required:"true"`
Total int `json:"total" required:"true"`
}
func GetCloudComplianceNodesList ¶
func GetCloudComplianceNodesList(ctx context.Context, cloudProvider string, fw FetchWindow) (CloudNodeAccountsListResp, error)
type CloudNodeControlReq ¶
type CloudNodeControlResp ¶
type CloudNodeControlResp struct {
Controls []CloudNodeComplianceControl `json:"controls"`
}
type CloudNodeProvidersListReq ¶
type CloudNodeProvidersListReq struct{}
type CloudNodeProvidersListResp ¶
type CloudNodeProvidersListResp struct {
Providers []PostureProvider `json:"providers" required:"true"`
}
type CloudResource ¶
type CloudResource struct {
ID string `json:"node_id" required:"true"`
Name string `json:"node_name" required:"true"`
Type string `json:"node_type" required:"true"`
TypeLabel string `json:"type_label" required:"true"`
AccountID string `json:"account_id" required:"true"`
CloudProvider string `json:"cloud_provider" required:"true"`
CloudRegion string `json:"cloud_region" required:"true"`
CloudCompliancesCount int64 `json:"cloud_compliances_count" required:"true"`
CloudComplianceScanStatus string `json:"cloud_compliance_scan_status" required:"true"`
CloudComplianceLatestScanID string `json:"cloud_compliance_latest_scan_id" required:"true"`
}
func (CloudResource) ExtendedField ¶
func (CloudResource) ExtendedField() string
func (CloudResource) GetCategory ¶
func (CloudResource) GetCategory() string
func (CloudResource) GetJSONCategory ¶
func (CloudResource) GetJSONCategory() string
func (CloudResource) NodeType ¶
func (CloudResource) NodeType() string
type Company ¶
type Company struct {
ID int32 `json:"id" required:"true"`
Name string `json:"name" required:"true"`
EmailDomain string `json:"email_domain" required:"true"`
Namespace string `json:"namespace" required:"true"`
}
func GetCompany ¶
func (*Company) Create ¶
func (c *Company) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.Company, error)
func (*Company) CreateDefaultUserGroup ¶
func (c *Company) CreateDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.UserGroup, error)
func (*Company) GetDefaultUserGroup ¶
func (c *Company) GetDefaultUserGroup(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.UserGroup, error)
func (*Company) GetDefaultUserGroupMap ¶
type Compliance ¶
type Compliance struct {
TestCategory string `json:"test_category" required:"true"`
TestNumber string `json:"test_number" required:"true"`
TestInfo string `json:"description" required:"true"`
RemediationScript string `json:"remediation_script,omitempty" required:"true"`
RemediationAnsible string `json:"remediation_ansible,omitempty" required:"true"`
RemediationPuppet string `json:"remediation_puppet,omitempty" required:"true"`
Resource string `json:"resource" required:"true"`
TestRationale string `json:"test_rationale" required:"true"`
TestSeverity string `json:"test_severity" required:"true"`
TestDesc string `json:"test_desc" required:"true"`
Status string `json:"status" required:"true"`
ComplianceCheckType string `json:"compliance_check_type" required:"true"`
ComplianceNodeID string `json:"node_id" required:"true"`
ComplianceNodeType string `json:"node_type" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
RuleID string `json:"rule_id" required:"true"`
}
func (Compliance) ExtendedField ¶
func (Compliance) ExtendedField() string
func (Compliance) GetCategory ¶
func (v Compliance) GetCategory() string
func (Compliance) GetJSONCategory ¶
func (Compliance) GetJSONCategory() string
func (Compliance) NodeType ¶
func (Compliance) NodeType() string
type ComplianceBenchmarkTypes ¶
type ComplianceBenchmarkTypes struct {
BenchmarkTypes []string `json:"benchmark_types" required:"true"`
}
type ComplianceRule ¶
type ComplianceRule struct {
TestCategory string `json:"test_category" required:"true"`
TestNumber string `json:"test_number" required:"true"`
TestInfo string `json:"description" required:"true"`
TestRationale string `json:"test_rationale" required:"true"`
TestSeverity string `json:"test_severity" required:"true"`
TestDesc string `json:"test_desc" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
}
func (ComplianceRule) ExtendedField ¶
func (ComplianceRule) ExtendedField() string
func (ComplianceRule) GetCategory ¶
func (v ComplianceRule) GetCategory() string
func (ComplianceRule) GetJSONCategory ¶
func (ComplianceRule) GetJSONCategory() string
func (ComplianceRule) NodeType ¶
func (ComplianceRule) NodeType() string
type ComplianceScanInfo ¶
type ComplianceScanResult ¶
type ComplianceScanResult struct {
ScanResultsCommon
ComplianceAdditionalInfo
Compliances []Compliance `json:"compliances" required:"true"`
}
type ComplianceScanStatusResp ¶
type ComplianceScanStatusResp struct {
Statuses []ComplianceScanInfo `json:"statuses" required:"true"`
}
type ComplianceScanTriggerReq ¶
type ComplianceScanTriggerReq struct {
ScanTriggerCommon
ComplianceBenchmarkTypes
}
type ConfigIDPathReq ¶
type ConfigIDPathReq struct {
ConfigID string `path:"config_id" validate:"required" required:"true"`
}
type Connection ¶
type ConnectionQueryResp ¶
type Container ¶
type Container struct {
ID string `json:"node_id" required:"true"`
NodeName string `json:"node_name" required:"true"`
Name string `json:"docker_container_name" required:"true"`
ContainerImage ContainerImage `json:"image" required:"true"`
Processes []Process `json:"processes" required:"true"`
DockerLabels map[string]interface{} `json:"docker_labels" required:"true" nested_json:"true"`
HostName string `json:"host_name" required:"true"`
DockerContainerCommand string `json:"docker_container_command" required:"true"`
DockerContainerState string `json:"docker_container_state" required:"true"`
DockerContainerStateHuman string `json:"docker_container_state_human" required:"true"`
DockerContainerNetworkMode string `json:"docker_container_network_mode" required:"true"`
DockerContainerNetworks string `json:"docker_container_networks" required:"true"`
DockerContainerIps []interface{} `json:"docker_container_ips" required:"true"`
DockerContainerCreated string `json:"docker_container_created" required:"true"`
DockerContainerPorts string `json:"docker_container_ports" required:"true"`
Uptime int `json:"uptime" required:"true"`
CPUMax float64 `json:"cpu_max" required:"true"`
CPUUsage float64 `json:"cpu_usage" required:"true"`
MemoryMax int64 `json:"memory_max" required:"true"`
MemoryUsage int64 `json:"memory_usage" required:"true"`
VulnerabilitiesCount int64 `json:"vulnerabilities_count" required:"true"`
VulnerabilityScanStatus string `json:"vulnerability_scan_status" required:"true"`
VulnerabilityLatestScanID string `json:"vulnerability_latest_scan_id" required:"true"`
SecretsCount int64 `json:"secrets_count" required:"true"`
SecretScanStatus string `json:"secret_scan_status" required:"true"`
SecretLatestScanID string `json:"secret_latest_scan_id" required:"true"`
MalwaresCount int64 `json:"malwares_count" required:"true"`
MalwareScanStatus string `json:"malware_scan_status" required:"true"`
MalwareLatestScanID string `json:"malware_latest_scan_id" required:"true"`
}
func (Container) ExtendedField ¶
func (Container) GetCategory ¶
func (Container) GetJSONCategory ¶
type ContainerImage ¶
type ContainerImage struct {
ID string `json:"node_id" required:"true"`
ImageNodeID string `json:"image_node_id" required:"true"`
NodeName string `json:"node_name" required:"true"`
Name string `json:"docker_image_name" required:"true"`
Tag string `json:"docker_image_tag" required:"true"`
Size string `json:"docker_image_size" required:"true"`
DockerImageCreatedAt string `json:"docker_image_created_at" required:"true"`
DockerImageVirtualSize string `json:"docker_image_virtual_size" required:"true"`
DockerImageID string `json:"docker_image_id" required:"true"`
DockerImageTagList []string `json:"docker_image_tag_list" required:"true"`
Metadata map[string]interface{} `json:"metadata" nested_json:"true"`
VulnerabilitiesCount int64 `json:"vulnerabilities_count" required:"true"`
VulnerabilityScanStatus string `json:"vulnerability_scan_status" required:"true"`
VulnerabilityLatestScanID string `json:"vulnerability_latest_scan_id" required:"true"`
SecretsCount int64 `json:"secrets_count" required:"true"`
SecretScanStatus string `json:"secret_scan_status" required:"true"`
SecretLatestScanID string `json:"secret_latest_scan_id" required:"true"`
MalwaresCount int64 `json:"malwares_count" required:"true"`
MalwareScanStatus string `json:"malware_scan_status" required:"true"`
MalwareLatestScanID string `json:"malware_latest_scan_id" required:"true"`
Containers []Container `json:"containers" required:"true"`
}
func ListImages ¶
func ListImages(ctx context.Context, registryID string, filter reporters.FieldsFilters, fw FetchWindow) ([]ContainerImage, error)
func (ContainerImage) ExtendedField ¶
func (ContainerImage) ExtendedField() string
func (ContainerImage) GetCategory ¶
func (ContainerImage) GetCategory() string
func (ContainerImage) GetJSONCategory ¶
func (ContainerImage) GetJSONCategory() string
func (ContainerImage) NodeType ¶
func (ContainerImage) NodeType() string
type DeleteRegistryBulkReq ¶
type DeleteRegistryBulkReq struct {
RegistryIds []string `json:"registry_ids" validate:"required" required:"true"`
}
type DownloadReportResponse ¶
type DownloadReportResponse struct {
URLLink string `json:"url_link"`
}
type DownloadScanResultsResponse ¶
type DownloadScanResultsResponse struct {
ScanInfo ScanResultsCommon `json:"scan_info"`
ScanResults []interface{} `json:"scan_results"`
}
type EmailConfigurationAdd ¶
type EmailConfigurationAdd struct {
EmailProvider string `json:"email_provider"`
CreatedByUserID int64 `json:"created_by_user_id"`
EmailID string `json:"email_id"`
SMTP string `json:"smtp"`
Port string `json:"port"`
Password string `json:"password"`
AmazonAccessKey string `json:"amazon_access_key"`
AmazonSecretKey string `json:"amazon_secret_key"`
SesRegion string `json:"ses_region"`
}
func (*EmailConfigurationAdd) Create ¶
func (e *EmailConfigurationAdd) Create(ctx context.Context, pgClient *postgresqlDb.Queries) error
type EmailConfigurationResp ¶
type EmailConfigurationSES ¶
type EmailConfigurationSES struct {
EmailID string `json:"email_id" validate:"required,email"`
AmazonAccessKey string `json:"amazon_access_key" validate:"required,min=16,max=128"`
AmazonSecretKey string `json:"amazon_secret_key" validate:"required,min=16,max=128"`
SesRegion string `` /* 345-byte string literal not displayed */
}
type EmailConfigurationSMTP ¶
type EndpointID ¶
type ErrorResponse ¶
type ExportReport ¶
type ExportReport struct {
Duration int `json:"duration"`
UpdatedAt int64 `json:"updated_at"`
ReportID string `json:"report_id"`
CreatedAt int64 `json:"created_at"`
Filters string `json:"filters"`
Type string `json:"type"`
URL string `json:"url"`
Status string `json:"status"`
StoragePath string `json:"storage_path"`
}
type FetchWindow ¶
type FetchWindow struct {
Offset int `json:"offset" required:"true"`
Size int `json:"size" required:"true"`
}
func (FetchWindow) FetchWindow2CypherQuery ¶
func (fw FetchWindow) FetchWindow2CypherQuery() string
type FiltersReq ¶
type FiltersResult ¶
type GenerateReportReq ¶
type GenerateReportReq struct {
ReportType string `json:"report_type" validate:"required" required:"true" enum:"pdf,xlsx"`
Duration int `json:"duration" enum:"0,1,7,30,60,90,180"`
Filters utils.ReportFilters `json:"filters"`
}
type GenerateReportResp ¶
type GenerateReportResp struct {
ReportID string `json:"report_id"`
}
type GenerativeAiIntegrationCloudPostureRequest ¶
type GenerativeAiIntegrationCloudPostureRequest struct {
GenerativeAiIntegrationRequestCommon
RemediationFormat string `json:"remediation_format" validate:"required,oneof=all cli pulumi terraform" required:"true" enum:"all,cli,pulumi,terraform"`
Group string `json:"group"`
Service string `json:"service"`
Title string `json:"title" validate:"required" required:"true"`
ComplianceCheckType string `json:"compliance_check_type" validate:"required" required:"true"`
CloudProvider string `json:"cloud_provider" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationCloudPostureRequest) GetFields ¶
func (a GenerativeAiIntegrationCloudPostureRequest) GetFields() interface{}
func (GenerativeAiIntegrationCloudPostureRequest) GetRequestType ¶
func (a GenerativeAiIntegrationCloudPostureRequest) GetRequestType() string
type GenerativeAiIntegrationKubernetesPostureRequest ¶
type GenerativeAiIntegrationKubernetesPostureRequest struct {
GenerativeAiIntegrationRequestCommon
RemediationFormat string `json:"remediation_format" validate:"required,oneof=all cli pulumi terraform" required:"true" enum:"all,cli,pulumi,terraform"`
Description string `json:"description" validate:"required" required:"true"`
ComplianceCheckType string `json:"compliance_check_type" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationKubernetesPostureRequest) GetFields ¶
func (a GenerativeAiIntegrationKubernetesPostureRequest) GetFields() interface{}
func (GenerativeAiIntegrationKubernetesPostureRequest) GetRequestType ¶
func (a GenerativeAiIntegrationKubernetesPostureRequest) GetRequestType() string
type GenerativeAiIntegrationLinuxPostureRequest ¶
type GenerativeAiIntegrationLinuxPostureRequest struct {
GenerativeAiIntegrationRequestCommon
RemediationFormat string `json:"remediation_format" validate:"required,oneof=all cli pulumi terraform" required:"true" enum:"all,cli,pulumi,terraform"`
Description string `json:"description" validate:"required" required:"true"`
TestNumber string `json:"test_number" validate:"required" required:"true"`
ComplianceCheckType string `json:"compliance_check_type" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationLinuxPostureRequest) GetFields ¶
func (a GenerativeAiIntegrationLinuxPostureRequest) GetFields() interface{}
func (GenerativeAiIntegrationLinuxPostureRequest) GetRequestType ¶
func (a GenerativeAiIntegrationLinuxPostureRequest) GetRequestType() string
type GenerativeAiIntegrationListRequest ¶
type GenerativeAiIntegrationListRequest struct {
IntegrationType string `query:"integration_type" validate:"omitempty,oneof=openai amazon-bedrock" enum:"openai,amazon-bedrock"`
}
type GenerativeAiIntegrationMalwareRequest ¶
type GenerativeAiIntegrationMalwareRequest struct {
GenerativeAiIntegrationRequestCommon
RuleName string `json:"rule_name" validate:"required" required:"true"`
Info string `json:"info" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationMalwareRequest) GetFields ¶
func (a GenerativeAiIntegrationMalwareRequest) GetFields() interface{}
func (GenerativeAiIntegrationMalwareRequest) GetRequestType ¶
func (a GenerativeAiIntegrationMalwareRequest) GetRequestType() string
type GenerativeAiIntegrationRequestCommon ¶
type GenerativeAiIntegrationRequestCommon struct {
IntegrationID int32 `json:"integration_id"`
QueryType string `json:"query_type" validate:"required,oneof=remediation" required:"true" enum:"remediation"`
}
func (GenerativeAiIntegrationRequestCommon) GetIntegrationID ¶
func (a GenerativeAiIntegrationRequestCommon) GetIntegrationID() int32
func (GenerativeAiIntegrationRequestCommon) GetQueryType ¶
func (a GenerativeAiIntegrationRequestCommon) GetQueryType() string
type GenerativeAiIntegrationSecretRequest ¶
type GenerativeAiIntegrationSecretRequest struct {
GenerativeAiIntegrationRequestCommon
Name string `json:"name" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationSecretRequest) GetFields ¶
func (a GenerativeAiIntegrationSecretRequest) GetFields() interface{}
func (GenerativeAiIntegrationSecretRequest) GetRequestType ¶
func (a GenerativeAiIntegrationSecretRequest) GetRequestType() string
type GenerativeAiIntegrationVulnerabilityRequest ¶
type GenerativeAiIntegrationVulnerabilityRequest struct {
GenerativeAiIntegrationRequestCommon
RemediationFormat string `json:"remediation_format" validate:"required,oneof=all cli pulumi terraform" required:"true" enum:"all,cli,pulumi,terraform"`
CveID string `json:"cve_id" validate:"required" required:"true"`
CveType string `json:"cve_type" validate:"required" required:"true"`
CveCausedByPackage string `json:"cve_caused_by_package" validate:"required" required:"true"`
}
func (GenerativeAiIntegrationVulnerabilityRequest) GetFields ¶
func (a GenerativeAiIntegrationVulnerabilityRequest) GetFields() interface{}
func (GenerativeAiIntegrationVulnerabilityRequest) GetRequestType ¶
func (a GenerativeAiIntegrationVulnerabilityRequest) GetRequestType() string
type GetAuditLogsRequest ¶
type GetAuditLogsRequest struct {
Window FetchWindow `json:"window" required:"true"`
}
type GetAuditLogsRow ¶
type GetAuditLogsRow struct {
Event string `json:"event"`
Action string `json:"action"`
Resources string `json:"resources"`
Success bool `json:"success"`
UserID int32 `json:"user_id"`
UserRoleID int32 `json:"user_role_id"`
CreatedAt time.Time `json:"created_at"`
Role string `json:"role"`
Email string `json:"email"`
}
type GraphResult ¶
type GraphResult struct {
Nodes detailed.NodeSummaries `json:"nodes" required:"true"`
Edges detailed.TopologyConnectionSummaries `json:"edges" required:"true"`
}
type Host ¶
type Host struct {
ID string `json:"node_id" required:"true"`
HostName string `json:"host_name" required:"true"`
NodeName string `json:"node_name" required:"true"`
Containers []Container `json:"containers" required:"true"`
Processes []Process `json:"processes" required:"true"`
Pods []Pod `json:"pods" required:"true"`
ContainerImages []ContainerImage `json:"container_images" required:"true"`
KernelVersion string `json:"kernel_version" required:"true"`
Uptime int `json:"uptime" required:"true"`
Version string `json:"version" required:"true"`
AgentRunning bool `json:"agent_running" required:"true"`
IsConsoleVM bool `json:"is_console_vm" required:"true"`
LocalCIDRs []interface{} `json:"local_cidr" required:"true"`
Os string `json:"os" required:"true"`
LocalNetworks []interface{} `json:"local_networks" required:"true"`
InstanceID string `json:"instance_id" required:"true"`
CloudProvider string `json:"cloud_provider" required:"true"`
CloudAccountID string `json:"cloud_account_id" required:"true"`
InstanceType string `json:"instance_type" required:"true"`
PublicIP []interface{} `json:"public_ip" required:"true"`
PrivateIP []interface{} `json:"private_ip" required:"true"`
AvailabilityZone string `json:"availability_zone" required:"true"`
KernelID string `json:"kernel_id" required:"true"`
CloudRegion string `json:"cloud_region" required:"true"`
ResourceGroup string `json:"resource_group" required:"true"`
CPUMax float64 `json:"cpu_max" required:"true"`
CPUUsage float64 `json:"cpu_usage" required:"true"`
MemoryMax int64 `json:"memory_max" required:"true"`
MemoryUsage int64 `json:"memory_usage" required:"true"`
VulnerabilitiesCount int64 `json:"vulnerabilities_count" required:"true"`
VulnerabilityScanStatus string `json:"vulnerability_scan_status" required:"true"`
VulnerabilityLatestScanID string `json:"vulnerability_latest_scan_id" required:"true"`
SecretsCount int64 `json:"secrets_count" required:"true"`
SecretScanStatus string `json:"secret_scan_status" required:"true"`
SecretLatestScanID string `json:"secret_latest_scan_id" required:"true"`
MalwaresCount int64 `json:"malwares_count" required:"true"`
MalwareScanStatus string `json:"malware_scan_status" required:"true"`
MalwareLatestScanID string `json:"malware_latest_scan_id" required:"true"`
CompliancesCount int64 `json:"compliances_count" required:"true"`
ComplianceScanStatus string `json:"compliance_scan_status" required:"true"`
ComplianceLatestScanID string `json:"compliance_latest_scan_id" required:"true"`
WarnAlarmCount int64 `json:"warn_alarm_count" required:"true"`
CloudWarnAlarmCount int64 `json:"cloud_warn_alarm_count" required:"true"`
InboundConnections []Connection `json:"inbound_connections" required:"true"`
OutboundConnections []Connection `json:"outbound_connections" required:"true"`
}
func (Host) ExtendedField ¶
func (Host) GetCategory ¶
func (Host) GetJSONCategory ¶
type Identifiable ¶
type Identifiable interface {
// contains filtered or unexported methods
}
type ImageStub ¶
type ImageStub struct {
ID string `json:"id"`
Name string `json:"name"`
Tags []string `json:"tags"`
}
func ListImageStubs ¶
func ListImageStubs(ctx context.Context, registryID string, filter reporters.FieldsFilters, fw FetchWindow) ([]ImageStub, error)
type IngestedContainerImage ¶
type IngestedContainerImage struct {
ID string `json:"node_id" required:"true"`
NodeName string `json:"node_name" required:"true"`
Name string `json:"docker_image_name" required:"true"`
Tag string `json:"docker_image_tag" required:"true"`
Size string `json:"docker_image_size" required:"true"`
DockerImageCreatedAt string `json:"docker_image_created_at" required:"true"`
DockerImageVirtualSize string `json:"docker_image_virtual_size" required:"true"`
DockerImageID string `json:"docker_image_id" required:"true"`
ShortImageID string `json:"short_image_id"`
Metadata map[string]interface{} `json:"metadata" nested_json:"true"`
}
func (IngestedContainerImage) ExtendedField ¶
func (IngestedContainerImage) ExtendedField() string
func (IngestedContainerImage) GetCategory ¶
func (IngestedContainerImage) GetCategory() string
func (IngestedContainerImage) GetJSONCategory ¶
func (IngestedContainerImage) GetJSONCategory() string
func (IngestedContainerImage) NodeType ¶
func (IngestedContainerImage) NodeType() string
type InitAgentReq ¶
type IntegrationAddReq ¶
type IntegrationAddReq struct {
Config map[string]interface{} `json:"config"`
IntegrationType string `json:"integration_type"`
NotificationType string `json:"notification_type"`
Filters IntegrationFilters `json:"filters"`
}
IntegrationAddReq is the request body for adding a new integration
func (*IntegrationAddReq) CreateIntegration ¶
func (i *IntegrationAddReq) CreateIntegration(ctx context.Context, pgClient *postgresqlDb.Queries, userID int64) error
func (*IntegrationAddReq) IntegrationExists ¶
func (i *IntegrationAddReq) IntegrationExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
type IntegrationFilters ¶
type IntegrationFilters struct {
FieldsFilters reporters.FieldsFilters `json:"fields_filters"`
NodeIds []NodeIdentifier `json:"node_ids" required:"true"`
}
type IntegrationIDPathReq ¶
type IntegrationIDPathReq struct {
IntegrationID string `path:"integration_id" validate:"required" required:"true"`
}
type IntegrationListReq ¶
type IntegrationListReq struct {
IntegrationTypes []string `json:"integration_types"`
}
func (*IntegrationListReq) GetIntegrations ¶
func (i *IntegrationListReq) GetIntegrations(ctx context.Context, pgClient *postgresqlDb.Queries) ([]postgresqlDb.Integration, error)
type IntegrationListResp ¶
type IntegrationListResp struct {
ID int32 `json:"id"`
IntegrationType string `json:"integration_type"`
NotificationType string `json:"notification_type"`
Config map[string]interface{} `json:"config"`
Filters IntegrationFilters `json:"filters"`
LastErrorMsg string `json:"last_error_msg"`
}
func (*IntegrationListResp) RedactSensitiveFieldsInConfig ¶
func (i *IntegrationListResp) RedactSensitiveFieldsInConfig()
type IntegrationUpdateReq ¶
type IntegrationUpdateReq struct {
ID int32 `json:"id"`
Config map[string]interface{} `json:"config"`
IntegrationType string `json:"integration_type"`
NotificationType string `json:"notification_type"`
Filters IntegrationFilters `json:"filters"`
IntegrationID string `path:"integration_id" validate:"required" required:"true"`
}
func (*IntegrationUpdateReq) UpdateIntegration ¶
func (i *IntegrationUpdateReq) UpdateIntegration(ctx context.Context, pgClient *postgresqlDb.Queries, integration postgresqlDb.Integration) error
type InviteUserRequest ¶
type InviteUserResponse ¶
type KubernetesCluster ¶
type KubernetesCluster struct {
ID string `json:"node_id" required:"true"`
Name string `json:"node_name" required:"true"`
AgentRunning bool `json:"agent_running" required:"true"`
Hosts []Host `json:"hosts" required:"true"`
}
func (KubernetesCluster) ExtendedField ¶
func (KubernetesCluster) ExtendedField() string
func (KubernetesCluster) GetCategory ¶
func (KubernetesCluster) GetCategory() string
func (KubernetesCluster) GetJSONCategory ¶
func (KubernetesCluster) GetJSONCategory() string
func (KubernetesCluster) NodeType ¶
func (KubernetesCluster) NodeType() string
type ListAgentVersionResp ¶
type ListAgentVersionResp struct {
Versions []string `json:"versions" required:"true"`
}
type LoginRequest ¶
type LoginResponse ¶
type LoginResponse struct {
ResponseAccessToken
OnboardingRequired bool `json:"onboarding_required" required:"true"`
PasswordInvalidated bool `json:"password_invalidated" required:"true"`
}
type Malware ¶
type Malware struct {
// Malware + MalwareRule node in neo4j
Class string `json:"class" required:"true"`
CompleteFilename string `json:"complete_filename" required:"true"`
FileSevScore int `json:"file_sev_score" required:"true"`
FileSeverity string `json:"file_severity" required:"true"`
ImageLayerID string `json:"image_layer_id" required:"true"`
NodeID string `json:"node_id" required:"true"`
RuleID string `json:"rule_id" required:"true"`
RuleName string `json:"rule_name" required:"true"`
Author string `json:"author"`
Date string `json:"date"`
Description string `json:"description"`
Filetype string `json:"filetype"`
Info string `json:"info"`
Version string `json:"version"`
SeverityScore int `json:"severity_score"`
StringsToMatch []interface{} `json:"strings_to_match"`
Summary string `json:"summary"`
Masked bool `json:"masked" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
}
func (Malware) ExtendedField ¶
func (Malware) GetCategory ¶
func (Malware) GetJSONCategory ¶
type MalwareRule ¶
type MalwareRule struct {
RuleID string `json:"rule_id"`
RuleName string `json:"rule_name"`
Author string `json:"author"`
Date string `json:"date"`
Description string `json:"description"`
Filetype string `json:"filetype"`
Info string `json:"info"`
Version string `json:"version"`
Reference string `json:"reference"`
FileSeverity string `json:"file_severity"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
}
func (MalwareRule) ExtendedField ¶
func (MalwareRule) ExtendedField() string
func (MalwareRule) GetCategory ¶
func (v MalwareRule) GetCategory() string
func (MalwareRule) GetJSONCategory ¶
func (MalwareRule) GetJSONCategory() string
func (MalwareRule) NodeType ¶
func (MalwareRule) NodeType() string
type MalwareScanResult ¶
type MalwareScanResult struct {
ScanResultsCommon
Malwares []Malware `json:"malwares" required:"true"`
SeverityCounts map[string]int32 `json:"severity_counts" required:"true"`
}
type MalwareScanResultClass ¶
type MalwareScanResultClass struct {
Class []string `json:"class" required:"true"`
}
type MalwareScanResultRules ¶
type MalwareScanResultRules struct {
Rules []string `json:"rules" required:"true"`
}
type MalwareScanTriggerReq ¶
type MalwareScanTriggerReq struct {
ScanTriggerCommon
}
type MessageResponse ¶
type MessageResponse struct {
Message string `json:"message" required:"true"`
}
type NodeIdentifier ¶
type PasswordResetRequest ¶
type PasswordResetRequest struct {
Email string `json:"email" validate:"required,email" required:"true"`
}
type Pod ¶
type Pod struct {
ID string `json:"node_id" required:"true"`
NodeName string `json:"node_name" required:"true"`
Namespace string `json:"kubernetes_namespace" required:"true"`
PodName string `json:"pod_name" required:"true"`
Host string `json:"host_name" required:"true"`
Containers []Container `json:"containers" required:"true"`
Processes []Process `json:"processes" required:"true"`
KubernetesClusterName string `json:"kubernetes_cluster_name" required:"true"`
KubernetesClusterID string `json:"kubernetes_cluster_id" required:"true"`
KubernetesState string `json:"kubernetes_state" required:"true"`
KubernetesIP string `json:"kubernetes_ip" required:"true"`
KubernetesIsInHostNetwork bool `json:"kubernetes_is_in_host_network" required:"true"`
KubernetesLabels map[string]interface{} `json:"kubernetes_labels" required:"true" nested_json:"true"`
KubernetesCreated string `json:"kubernetes_created" required:"true"`
MalwareScanStatus string `json:"malware_scan_status" required:"true"`
SecretScanStatus string `json:"secret_scan_status" required:"true"`
VulnerabilityScanStatus string `json:"vulnerability_scan_status" required:"true"`
}
func (Pod) ExtendedField ¶
func (Pod) GetCategory ¶
func (Pod) GetJSONCategory ¶
type PostureProvider ¶
type PostureProvider struct {
Name string `json:"name"`
NodeCount int64 `json:"node_count"`
NodeCountInactive int64 `json:"node_count_inactive"`
NodeLabel string `json:"node_label"`
ScanCount int64 `json:"scan_count"`
CompliancePercentage float64 `json:"compliance_percentage"`
ResourceCount int64 `json:"resource_count"`
}
func GetCloudProvidersList ¶
func GetCloudProvidersList(ctx context.Context) ([]PostureProvider, error)
type PresentationContext ¶
type Process ¶
type Process struct {
ID string `json:"node_id" required:"true"`
Name string `json:"node_name" required:"true"`
ShortNodeName string `json:"short_name" required:"true"`
PID int `json:"pid" required:"true"`
Command string `json:"cmdline" required:"true"`
PPID int `json:"ppid" required:"true"`
ThreadNumber int `json:"threads" required:"true"`
CPUMax float64 `json:"cpu_max" required:"true"`
CPUUsage float64 `json:"cpu_usage" required:"true"`
MemoryMax int64 `json:"memory_max" required:"true"`
MemoryUsage int64 `json:"memory_usage" required:"true"`
OpenFilesCount int `json:"open_files_count" required:"true"`
}
func (Process) ExtendedField ¶
func (Process) GetCategory ¶
func (Process) GetJSONCategory ¶
type RegisterInvitedUserRequest ¶
type RegisterInvitedUserRequest struct {
Namespace string `json:"namespace" validate:"required,namespace" required:"true"`
FirstName string `json:"first_name" validate:"required,user_name,min=2,max=32" required:"true"`
LastName string `json:"last_name" validate:"required,user_name,min=2,max=32" required:"true"`
Password string `json:"password" validate:"required,password,min=8,max=32" required:"true"`
IsTemporaryPassword bool `json:"is_temporary_password"`
Code string `json:"code" validate:"required,uuid4" required:"true"`
}
type RegistryAccount ¶
type RegistryAccount struct {
ID string `json:"node_id" required:"true"`
Name string `json:"host_name" required:"true"`
ContainerImages []ContainerImage `json:"container_images" required:"true"`
RegistryType string `json:"registry_type" required:"true"`
Syncing bool `json:"syncing" required:"true"`
}
func (RegistryAccount) ExtendedField ¶
func (RegistryAccount) ExtendedField() string
func (RegistryAccount) GetCategory ¶
func (RegistryAccount) GetCategory() string
func (RegistryAccount) GetJSONCategory ¶
func (RegistryAccount) GetJSONCategory() string
func (RegistryAccount) NodeType ¶
func (RegistryAccount) NodeType() string
type RegistryAddReq ¶
type RegistryAddReq struct {
Name string `json:"name" validate:"required,min=2,max=64" required:"true"`
NonSecret map[string]interface{} `json:"non_secret"`
Secret map[string]interface{} `json:"secret"`
Extras map[string]interface{} `json:"extras"`
RegistryType string `json:"registry_type" validate:"required" required:"true"`
}
func (*RegistryAddReq) CreateRegistry ¶
func (ra *RegistryAddReq) CreateRegistry(ctx context.Context, rContext context.Context, pgClient *postgresqlDb.Queries, ns string) (int32, error)
func (*RegistryAddReq) RegistryExists ¶
func (ra *RegistryAddReq) RegistryExists(ctx context.Context, pgClient *postgresqlDb.Queries) (bool, error)
type RegistryCountResp ¶
type RegistryCountResp struct {
Count int `json:"count"`
}
type RegistryGCRAddReq ¶
type RegistryGCRAddReq struct {
Name string `formData:"name" json:"name" validate:"required,min=2,max=64" required:"true"`
RegistryURL string `formData:"registry_url" json:"registry_url" validate:"required,url" required:"true"`
ServiceAccountJSON multipart.File `formData:"service_account_json" json:"service_account_json" validate:"required" required:"true"`
}
type RegistryIDPathReq ¶
type RegistryIDPathReq struct {
RegistryID string `path:"registry_id" validate:"required" required:"true"`
}
type RegistryImage ¶
type RegistryImage struct {
Name string `json:"name"`
Namespace string `json:"namespace"`
RepositoryType string `json:"repository_type"`
Status int `json:"status"`
StatusDescription string `json:"status_description"`
Description string `json:"description"`
IsPrivate bool `json:"is_private"`
StarCount int `json:"star_count"`
PullCount int `json:"pull_count"`
LastUpdated time.Time `json:"last_updated"`
DateRegistered time.Time `json:"date_registered"`
Affiliation string `json:"affiliation"`
MediaTypes []string `json:"media_types"`
ContentTypes []string `json:"content_types"`
}
type RegistryImageListReq ¶
type RegistryImageListReq struct {
ResourceType string `json:"resource_type,omitempty"`
Namespace string `json:"namespace,omitempty"`
ID int32 `json:"id"`
}
func (*RegistryImageListReq) GetRegistryImages ¶
func (r *RegistryImageListReq) GetRegistryImages(ctx context.Context) ([]ContainerImage, error)
type RegistryImageStubsReq ¶
type RegistryImageStubsReq struct {
RegistryID string `json:"registry_id" validate:"required" required:"true"`
ImageFilter reporters.FieldsFilters `json:"image_filter" required:"true"`
Window FetchWindow `json:"window" required:"true"`
}
type RegistryImages ¶
type RegistryImages struct {
Count int `json:"count"`
Next string `json:"next"`
Previous interface{} `json:"previous"`
Results []RegistryImage `json:"results"`
}
type RegistryImagesReq ¶
type RegistryImagesReq struct {
RegistryID string `json:"registry_id" validate:"required" required:"true"`
ImageFilter reporters.FieldsFilters `json:"image_filter" required:"true"`
Window FetchWindow `json:"window" required:"true"`
}
type RegistryListReq ¶
type RegistryListReq struct{}
todo: add support to list by name and type, id
func (*RegistryListReq) IsRegistrySyncing ¶
func (rl *RegistryListReq) IsRegistrySyncing(ctx context.Context, rid string) bool
func (*RegistryListReq) ListRegistriesSafe ¶
func (rl *RegistryListReq) ListRegistriesSafe(ctx context.Context, pgClient *postgresqlDb.Queries) ([]postgresqlDb.GetContainerRegistriesSafeRow, error)
ListRegistriesSafe doesnot get secret field from DB
type RegistryListResp ¶
type RegistryListResp struct {
ID int32 `json:"id"`
NodeID string `json:"node_id"`
Name string `json:"name"`
RegistryType string `json:"registry_type"`
IsSyncing bool `json:"is_syncing"`
NonSecret json.RawMessage `json:"non_secret"`
CreatedAt int64 `json:"created_at"`
UpdatedAt int64 `json:"updated_at"`
}
type RegistrySummaryAllResp ¶
func RegistrySummaryAll ¶
func RegistrySummaryAll(ctx context.Context) (RegistrySummaryAllResp, error)
type RegistryTypeReq ¶
type RegistryTypeReq struct {
RegistryType string `path:"registry_type" validate:"required" required:"true"`
}
type RegistryUpdateReq ¶
type RegistryUpdateReq struct {
ID string `path:"registry_id" validate:"required" required:"true"`
Name string `json:"name" validate:"required,min=2,max=64" required:"true"`
NonSecret map[string]interface{} `json:"non_secret"`
Secret map[string]interface{} `json:"secret"`
Extras map[string]interface{} `json:"extras"`
RegistryType string `json:"registry_type" validate:"required" required:"true"`
}
func (*RegistryUpdateReq) RegistryExists ¶
func (ru *RegistryUpdateReq) RegistryExists(ctx context.Context, pgClient *postgresqlDb.Queries, id int32) (bool, error)
func (*RegistryUpdateReq) UpdateRegistry ¶
func (ru *RegistryUpdateReq) UpdateRegistry(ctx context.Context, pgClient *postgresqlDb.Queries, r int32) error
type ReportReq ¶
type ReportReq struct {
ReportID string `json:"report_id" path:"report_id" validate:"required" required:"true"`
}
type ResponseAccessToken ¶
type SbomRequest ¶
type SbomRequest struct {
// either scan_id or node_id+node_type is required
ScanID string `json:"scan_id" validate:"required" required:"true"`
}
type SbomResponse ¶
type SbomResponse struct {
PackageName string `json:"package_name,omitempty"`
Version string `json:"version,omitempty"`
Locations []string `json:"locations,omitempty"`
Licenses []string `json:"licenses,omitempty"`
CveID string `json:"cve_id,omitempty"`
Severity string `json:"severity,omitempty"`
CveNodeID string `json:"cve_node_id,omitempty"`
}
type ScanActionRequest ¶
type ScanCompareReq ¶
type ScanCompareReq struct {
BaseScanID string `json:"base_scan_id" required:"true"`
ToScanID string `json:"to_scan_id" required:"true"`
FieldsFilter reporters.FieldsFilters `json:"fields_filter" required:"true"`
Window FetchWindow `json:"window" required:"true"`
}
type ScanCompareRes ¶
type ScanCompareRes[T any] struct { New []T `json:"new" required:"true"` }
type ScanCompareResCloudCompliance ¶
type ScanCompareResCloudCompliance = ScanCompareRes[CloudCompliance]
type ScanCompareResCompliance ¶
type ScanCompareResCompliance = ScanCompareRes[Compliance]
type ScanCompareResMalware ¶
type ScanCompareResMalware = ScanCompareRes[Malware]
type ScanCompareResSecret ¶
type ScanCompareResSecret = ScanCompareRes[Secret]
type ScanCompareResVulnerability ¶
type ScanCompareResVulnerability = ScanCompareRes[Vulnerability]
type ScanFilter ¶
type ScanFilter struct {
ImageScanFilter reporters.ContainsFilter `json:"image_scan_filter" required:"true"`
ContainerScanFilter reporters.ContainsFilter `json:"container_scan_filter" required:"true"`
HostScanFilter reporters.ContainsFilter `json:"host_scan_filter" required:"true"`
CloudAccountScanFilter reporters.ContainsFilter `json:"cloud_account_scan_filter" required:"true"`
KubernetesClusterScanFilter reporters.ContainsFilter `json:"kubernetes_cluster_scan_filter" required:"true"`
}
type ScanInfo ¶
type ScanInfo struct {
ScanID string `json:"scan_id" required:"true"`
Status string `json:"status" required:"true"`
StatusMessage string `json:"status_message" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true" format:"int64"`
CreatedAt int64 `json:"created_at" required:"true" format:"int64"`
NodeID string `json:"node_id" required:"true"`
NodeType string `json:"node_type" required:"true"`
SeverityCounts map[string]int32 `json:"severity_counts" required:"true"`
NodeName string `json:"node_name" required:"true"`
}
type ScanListReq ¶
type ScanListReq struct {
NodeIds []NodeIdentifier `json:"node_ids" required:"true"`
FieldsFilter reporters.FieldsFilters `json:"fields_filter" required:"true"`
Window FetchWindow `json:"window" required:"true"`
}
type ScanListResp ¶
type ScanListResp struct {
ScansInfo []ScanInfo `json:"scans_info" required:"true"`
}
type ScanResultBasicNode ¶
type ScanResultsActionRequest ¶
type ScanResultsActionRequest struct {
ScanID string `json:"scan_id" validate:"required" required:"true"`
ResultIDs []string `json:"result_ids" validate:"required,gt=0,dive,min=1" required:"true"`
ScanType string `` /* 217-byte string literal not displayed */
NotifyIndividual bool `json:"notify_individual"`
}
type ScanResultsCommon ¶
type ScanResultsCommon struct {
ContainerName string `json:"docker_container_name" required:"true"`
ImageName string `json:"docker_image_name" required:"true"`
HostName string `json:"host_name" required:"true"`
KubernetesClusterName string `json:"kubernetes_cluster_name" required:"true"`
NodeID string `json:"node_id" required:"true"`
NodeName string `json:"node_name" required:"true"`
NodeType string `json:"node_type" required:"true"`
ScanID string `json:"scan_id" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true" format:"int64"`
CreatedAt int64 `json:"created_at" required:"true" format:"int64"`
CloudAccountID string `json:"cloud_account_id" required:"true"`
}
type ScanResultsMaskRequest ¶
type ScanResultsMaskRequest struct {
ScanID string `json:"scan_id" validate:"required" required:"true"`
ResultIDs []string `json:"result_ids" validate:"required,gt=0,dive,min=1" required:"true"`
ScanType string `` /* 217-byte string literal not displayed */
MaskAction string `` /* 183-byte string literal not displayed */
}
type ScanResultsReq ¶
type ScanResultsReq struct {
ScanID string `json:"scan_id" required:"true"`
FieldsFilter reporters.FieldsFilters `json:"fields_filter" required:"true"`
Window FetchWindow `json:"window" required:"true"`
}
type ScanStatus ¶
type ScanStatus string
type ScanStatusReq ¶
type ScanStatusResp ¶
type ScanTriggerCommon ¶
type ScanTriggerCommon struct {
NodeIDs []NodeIdentifier `json:"node_ids" required:"true"`
Filters ScanFilter `json:"filters" required:"true"`
IsPriority bool `json:"is_priority"`
}
type ScanTriggerResp ¶
type ScheduleJobID ¶
type ScheduleJobID struct {
ID int64 `path:"id"`
}
type ScheduleTaskPayload ¶
type ScheduleTaskPayload struct {
ScanTriggerCommon
ScanConfigLanguages []VulnerabilityScanConfigLanguage `json:"scan_config" required:"true"`
ComplianceBenchmarkTypes
}
type Secret ¶
type Secret struct {
// Secret + Rule neo4j node
NodeID string `json:"node_id" required:"true"`
StartingIndex int32 `json:"starting_index" required:"true"`
RelativeStartingIndex int32 `json:"relative_starting_index" required:"true"`
RelativeEndingIndex int32 `json:"relative_ending_index" required:"true"`
FullFilename string `json:"full_filename" required:"true"`
MatchedContent string `json:"matched_content" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
Level string `json:"level" required:"true"`
Score float64 `json:"score" required:"true"`
RuleID int32 `json:"rule_id" required:"true"`
Name string `json:"name" required:"true"`
Part string `json:"part" required:"true"`
SignatureToMatch string `json:"signature_to_match" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
}
func (Secret) ExtendedField ¶
func (Secret) GetCategory ¶
func (Secret) GetJSONCategory ¶
type SecretRule ¶
type SecretRule struct {
ID int `json:"id"`
Name string `json:"name"`
Part string `json:"part"`
SignatureToMatch string `json:"signature_to_match"`
Level string `json:"level" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
}
func (SecretRule) ExtendedField ¶
func (SecretRule) ExtendedField() string
func (SecretRule) GetCategory ¶
func (v SecretRule) GetCategory() string
func (SecretRule) GetJSONCategory ¶
func (SecretRule) GetJSONCategory() string
func (SecretRule) NodeType ¶
func (SecretRule) NodeType() string
type SecretScanResult ¶
type SecretScanResult struct {
ScanResultsCommon
Secrets []Secret `json:"secrets" required:"true"`
SeverityCounts map[string]int32 `json:"severity_counts" required:"true"`
}
type SecretScanResultRules ¶
type SecretScanResultRules struct {
Rules []string `json:"rules" required:"true"`
}
type SecretScanTriggerReq ¶
type SecretScanTriggerReq struct {
ScanTriggerCommon
}
type Setting ¶
type Setting struct {
ID int64 `json:"id"`
Key string `json:"key"`
Value *SettingValue `json:"value"`
IsVisibleOnUI bool `json:"is_visible_on_ui"`
}
func GetSettingByKey ¶
func (*Setting) Create ¶
func (s *Setting) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.Setting, error)
type SettingUpdateRequest ¶
type SettingValue ¶
type SettingsResponse ¶
type SettingsResponse struct {
ID int64 `json:"id" required:"true"`
Key string `json:"key" required:"true"`
Label string `json:"label" required:"true"`
Value interface{} `json:"value" required:"true"`
Description string `json:"description" required:"true"`
}
func GetVisibleSettings ¶
func GetVisibleSettings(ctx context.Context, pgClient *postgresqlDb.Queries) ([]SettingsResponse, error)
type StopScanRequest ¶
type Summary ¶
type TopologyDeltaReq ¶
type TopologyDeltaReq struct {
AdditionTimestamp int64 `json:"addition_timestamp" required:"true" format:"int64"`
DeletionTimestamp int64 `json:"deletion_timestamp" required:"true" format:"int64"`
Addition bool `json:"addition" required:"true"`
Deletion bool `json:"deletion" required:"true"`
EntityTypes []string `json:"entity_types" required:"true"`
}
type TopologyDeltaResponse ¶
type TopologyDeltaResponse struct {
Additions []NodeIdentifier `json:"additons"`
Deletions []NodeIdentifier `json:"deletions"`
AdditionTimestamp int64 `json:"addition_timestamp" format:"int64"`
DeletionTimestamp int64 `json:"deletion_timestamp" format:"int64"`
}
type UpdateUserIDRequest ¶
type UpdateUserIDRequest struct {
ID int64 `path:"id" validate:"required"`
FirstName string `json:"first_name" validate:"required,user_name,min=2,max=32"`
LastName string `json:"last_name" validate:"required,user_name,min=2,max=32"`
IsActive bool `json:"is_active"`
Role string `json:"role" validate:"required,oneof=admin standard-user read-only-user" enum:"admin,standard-user,read-only-user"`
}
type UpdateUserRequest ¶
type UpdateUserRequest struct {
FirstName string `json:"first_name" validate:"required,user_name,min=2,max=32"`
LastName string `json:"last_name" validate:"required,user_name,min=2,max=32"`
IsActive bool `json:"is_active"`
Role string `json:"role" validate:"required,oneof=admin standard-user read-only-user" enum:"admin,standard-user,read-only-user"`
}
type User ¶
type User struct {
ID int64 `json:"id"`
FirstName string `json:"first_name" validate:"required,user_name,min=2,max=32" required:"true"`
LastName string `json:"last_name" validate:"required,user_name,min=2,max=32" required:"true"`
Email string `json:"email" validate:"required,email" required:"true"`
Company string `json:"company" validate:"required,company_name,min=2,max=32" required:"true"`
CompanyID int32 `json:"company_id"`
IsActive bool `json:"is_active"`
Password string `json:"-" validate:"required,password,min=8,max=32"`
Groups map[string]string `json:"groups"`
Role string `json:"role" validate:"oneof=admin standard-user read-only-user" enum:"admin,standard-user,read-only-user"`
RoleID int32 `json:"role_id"`
PasswordInvalidated bool `json:"password_invalidated"`
CompanyNamespace string `json:"-"`
CurrentUser *bool `json:"current_user,omitempty"`
}
func GetUserByEmail ¶
func GetUserByID ¶
func (*User) CompareHashAndPassword ¶
func (*User) Create ¶
func (u *User) Create(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.User, error)
func (*User) CreateAPIToken ¶
func (u *User) CreateAPIToken(ctx context.Context, pgClient *postgresqlDb.Queries, roleID int32, company *Company) (*postgresqlDb.ApiToken, error)
func (*User) CreateAccessToken ¶
func (*User) CreateRefreshToken ¶
func (*User) GetAccessToken ¶
func (*User) LoadFromDBByEmail ¶
func (*User) LoadFromDBByID ¶
func (*User) SetPassword ¶
func (*User) Update ¶
func (u *User) Update(ctx context.Context, pgClient *postgresqlDb.Queries) (*postgresqlDb.User, error)
func (*User) UpdatePassword ¶
type UserIDRequest ¶
type UserIDRequest struct {
ID int64 `path:"id"`
}
type UserRegisterRequest ¶
type UserRegisterRequest struct {
FirstName string `json:"first_name" validate:"required,user_name,min=2,max=32" required:"true"`
LastName string `json:"last_name" validate:"required,user_name,min=2,max=32" required:"true"`
Email string `json:"email" validate:"required,email" required:"true"`
Company string `json:"company" validate:"required,company_name,min=2,max=32" required:"true"`
Password string `json:"password" validate:"required,password,min=8,max=32" required:"true"`
IsTemporaryPassword bool `json:"is_temporary_password"`
ConsoleURL string `json:"console_url" validate:"required,url" required:"true"`
}
type Vulnerability ¶
type Vulnerability struct {
NodeID string `json:"node_id" required:"true"`
CveID string `json:"cve_id" required:"true"`
CveSeverity string `json:"cve_severity" required:"true"`
CveCausedByPackage string `json:"cve_caused_by_package" required:"true"`
CveCausedByPackagePath string `json:"cve_caused_by_package_path" required:"true"`
CveContainerLayer string `json:"cve_container_layer" required:"true"`
CveLink string `json:"cve_link" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
HasLiveConnection bool `json:"has_live_connection" required:"true"`
CveType string `json:"cve_type" required:"true"`
CveFixedIn string `json:"cve_fixed_in" required:"true"`
CveDescription string `json:"cve_description" required:"true"`
CveCVSSScore float64 `json:"cve_cvss_score" required:"true"`
CveOverallScore float64 `json:"cve_overall_score" required:"true"`
CveAttackVector string `json:"cve_attack_vector" required:"true"`
URLs []interface{} `json:"urls" required:"true"`
ExploitPOC string `json:"exploit_poc" required:"true"`
ParsedAttackVector string `json:"parsed_attack_vector" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
RuleID string `json:"rule_id" required:"true"`
}
func (Vulnerability) ExtendedField ¶
func (Vulnerability) ExtendedField() string
func (Vulnerability) GetCategory ¶
func (v Vulnerability) GetCategory() string
func (Vulnerability) GetJSONCategory ¶
func (Vulnerability) GetJSONCategory() string
func (Vulnerability) NodeType ¶
func (Vulnerability) NodeType() string
type VulnerabilityRule ¶
type VulnerabilityRule struct {
NodeID string `json:"node_id" required:"true"`
CveID string `json:"cve_id" required:"true"`
CveType string `json:"cve_type" required:"true"`
CveSeverity string `json:"cve_severity" required:"true"`
CveFixedIn string `json:"cve_fixed_in" required:"true"`
CveLink string `json:"cve_link" required:"true"`
CveDescription string `json:"cve_description" required:"true"`
CveCVSSScore float64 `json:"cve_cvss_score" required:"true"`
CveOverallScore float64 `json:"cve_overall_score" required:"true"`
CveAttackVector string `json:"cve_attack_vector" required:"true"`
URLs []interface{} `json:"urls" required:"true"`
ExploitPOC string `json:"exploit_poc" required:"true"`
Masked bool `json:"masked" required:"true"`
UpdatedAt int64 `json:"updated_at" required:"true"`
ParsedAttackVector string `json:"parsed_attack_vector" required:"true"`
Resources []BasicNode `json:"resources" required:"false"`
}
func (VulnerabilityRule) ExtendedField ¶
func (VulnerabilityRule) ExtendedField() string
func (VulnerabilityRule) GetCategory ¶
func (v VulnerabilityRule) GetCategory() string
func (VulnerabilityRule) GetJSONCategory ¶
func (VulnerabilityRule) GetJSONCategory() string
func (VulnerabilityRule) NodeType ¶
func (VulnerabilityRule) NodeType() string
type VulnerabilityScanConfig ¶
type VulnerabilityScanConfig struct {
ScanConfigLanguages []VulnerabilityScanConfigLanguage `json:"scan_config" validate:"required,min=1" required:"true"`
}
type VulnerabilityScanConfigLanguage ¶
type VulnerabilityScanConfigLanguage struct {
Language string `` /* 228-byte string literal not displayed */
}
type VulnerabilityScanResult ¶
type VulnerabilityScanResult struct {
ScanResultsCommon
Vulnerabilities []Vulnerability `json:"vulnerabilities" required:"true"`
SeverityCounts map[string]int32 `json:"severity_counts" required:"true"`
}
type VulnerabilityScanTriggerReq ¶
type VulnerabilityScanTriggerReq struct {
ScanTriggerCommon
VulnerabilityScanConfig
}
Click to show internal directories.
Click to hide internal directories.