Documentation
¶
Index ¶
- type Client
- type ClientConfig
- type CloudConfigRule
- type CloudConfigRuleConnection
- type CloudConfigRuleQueryControl
- type CloudConfigRuleQuerySubscription
- type CloudConfigRuleQueryUser
- type ConfigurationFinding
- type ConfigurationFindingConnection
- type ConfigurationFindingQueryRule
- type ConfigurationFindingQuerySubscription
- type ConfigurationFindingResource
- type ConfigurationFindingResourceQueryProject
- type Control
- type ControlConnection
- type ControlQueryCloudConfigRule
- type ControlQueryProject
- type ControlQueryUser
- type DateFilter
- type GetCloudConfigRuleResponse
- type GetConfigurationFindingResponse
- type GetControlResponse
- type GetIssueResponse
- type GetProjectResponse
- type GetSecurityCategoryResponse
- type GetSecurityFrameworkResponse
- type GetServiceAccountResponse
- type GetSubscriptionResponse
- type GetUserResponse
- type GetVulnerabilityFindingResponse
- type GraphEntity
- type Issue
- type IssueConnection
- type IssueFilter
- type IssueNote
- type IssueQueryAutomationAction
- type IssueQueryControl
- type IssueQueryIntegration
- type IssueQueryProject
- type IssueQueryServiceAccount
- type IssueQueryUser
- type IssueServiceTickets
- type ListCloudConfigRulesRequestConfiguration
- type ListCloudConfigRulesResponse
- type ListConfigurationFindingsRequestConfiguration
- type ListConfigurationFindingsResponse
- type ListControlsRequestConfiguration
- type ListControlsResponse
- type ListIssuesRequestConfiguration
- type ListIssuesResponse
- type ListProjectsRequestConfiguration
- type ListProjectsResponse
- type ListSecurityCategoriesRequestConfiguration
- type ListSecurityCategoriesResponse
- type ListSecurityFrameworksRequestConfiguration
- type ListSecurityFrameworksResponse
- type ListServiceAccountsRequestConfiguration
- type ListServiceAccountsResponse
- type ListSubscriptionsRequestConfiguration
- type ListSubscriptionsResponse
- type ListUserRolesRequestConfiguration
- type ListUserRolesResponse
- type ListUsersRequestConfiguration
- type ListUsersResponse
- type ListVulnerabilityFindingsRequestConfiguration
- type ListVulnerabilityFindingsResponse
- type PageInfo
- type Project
- type ProjectConnection
- type ProjectOwner
- type ProjectResourceTagLinks
- type ProjectRiskProfile
- type ResourceTag
- type SecurityCategory
- type SecurityCategoryConnection
- type SecurityCategoryQueryCategory
- type SecurityCategoryQueryFramework
- type SecurityFramework
- type SecurityFrameworkConnection
- type SecurityFrameworkQueryCategory
- type SecuritySubCategory
- type ServiceAccount
- type ServiceAccountConnection
- type ServiceAccountQueryProject
- type Subscription
- type SubscriptionConnection
- type SubscriptionQueryProject
- type Tenant
- type User
- type UserConnection
- type UserQueryProject
- type UserRole
- type UserRoleConnection
- type VulnerabilityFinding
- type VulnerabilityFindingConnection
- type VulnerableAsset
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
Wiz API Client
func CreateClient ¶
func CreateClient(ctx context.Context, config ClientConfig) (*Client, error)
type ClientConfig ¶
type CloudConfigRule ¶
type CloudConfigRule struct {
BuiltIn bool `json:"builtin"`
CloudProvider string `json:"cloudProvider"`
Control []CloudConfigRuleQueryControl `json:"control"`
CreatedAt string `json:"createdAt"`
CreatedBy CloudConfigRuleQueryUser `json:"createdBy"`
Description string `json:"description"`
Enabled bool `json:"enabled"`
FunctionAsControl bool `json:"functionAsControl"`
HasAutoRemediation bool `json:"hasAutoRemediation"`
Id string `json:"id"`
Name string `json:"name"`
RemediationInstructions string `json:"remediationInstructions"`
ScopeAccounts []CloudConfigRuleQuerySubscription `json:"scopeAccounts"`
ServiceType string `json:"serviceType"`
Severity string `json:"severity"`
ShortId string `json:"shortId"`
SupportsNrt bool `json:"supportsNRT"`
TargetNativeTypes []string `json:"targetNativeTypes"`
UpdatedAt string `json:"updatedAt"`
}
Cloud configuration rule object
type CloudConfigRuleConnection ¶
type CloudConfigRuleConnection struct {
Nodes []CloudConfigRule `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the cloud configuration rule
type CloudConfigRuleQueryControl ¶
type CloudConfigRuleQueryControl struct {
Id string `json:"id"`
}
Control information
type CloudConfigRuleQuerySubscription ¶
type CloudConfigRuleQuerySubscription struct {
Id string `json:"id"`
}
Cloud account information
type CloudConfigRuleQueryUser ¶
type CloudConfigRuleQueryUser struct {
Id string `json:"id"`
}
User information
type ConfigurationFinding ¶
type ConfigurationFinding struct {
AnalyzedAt string `json:"analyzedAt"`
Id string `json:"id"`
Remediation string `json:"remediation"`
ResolutionReason string `json:"resolutionReason"`
Resource ConfigurationFindingResource `json:"resource"`
Result string `json:"result"`
Rule ConfigurationFindingQueryRule `json:"rule"`
Severity string `json:"severity"`
Status string `json:"status"`
Subscription ConfigurationFindingQuerySubscription `json:"subscription"`
}
Configuration finding object
type ConfigurationFindingConnection ¶
type ConfigurationFindingConnection struct {
Nodes []ConfigurationFinding `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for cloud configuration findings
type ConfigurationFindingQueryRule ¶
type ConfigurationFindingQueryRule struct {
Id string `json:"id"`
}
Cloud configuration rule information
type ConfigurationFindingQuerySubscription ¶
type ConfigurationFindingQuerySubscription struct {
Id string `json:"id"`
}
Subscription information
type ConfigurationFindingResource ¶
type ConfigurationFindingResource struct {
CloudPlatform string `json:"analyzedAt,omitempty"`
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
NativeType string `json:"nativeType,omitempty"`
Projects []ConfigurationFindingResourceQueryProject `json:"projects,omitempty"`
Region string `json:"region,omitempty"`
Status string `json:"status,omitempty"`
Tags []ResourceTag `json:"tags,omitempty"`
Type string `json:"type,omitempty"`
}
Configuration finding resource object
type ConfigurationFindingResourceQueryProject ¶
type ConfigurationFindingResourceQueryProject struct {
Id string `json:"id"`
}
Project information
type Control ¶
type Control struct {
CreatedAt string `json:"createdAt"`
CreatedBy ControlQueryUser `json:"createdBy"`
Description string `json:"description"`
Enabled bool `json:"enabled"`
EnabledForHBI bool `json:"enabledForHBI"`
EnabledForLBI bool `json:"enabledForLBI"`
EnabledForMBI bool `json:"enabledForMBI"`
EnabledForUnattributed bool `json:"enabledForUnattributed"`
HasAutoRemediation bool `json:"hasAutoRemediation"`
Id string `json:"id"`
LastRunAt string `json:"lastRunAt"`
LastRunError string `json:"lastRunError"`
LastSuccessfulRunAt string `json:"lastSuccessfulRunAt"`
Name string `json:"name"`
Query interface{} `json:"query"`
ResolutionRecommendation string `json:"resolutionRecommendation"`
ResolutionRecommendationPlainText string `json:"resolutionRecommendationPlainText"`
ScopedProject ControlQueryProject `json:"scopeProject"`
Severity string `json:"severity"`
SourceCloudConfigurationRule ControlQueryCloudConfigRule `json:"sourceCloudConfigurationRule"`
SupportsNRT bool `json:"supportsNRT"`
Tags []string `json:"tags"`
Type string `json:"type"`
}
Control object
type ControlConnection ¶
type ControlConnection struct {
Nodes []Control `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the control
type ControlQueryCloudConfigRule ¶
type ControlQueryCloudConfigRule struct {
Id string `json:"id"`
}
Cloud configuration rule object
type DateFilter ¶
type GetCloudConfigRuleResponse ¶
type GetCloudConfigRuleResponse struct {
CloudConfigRule CloudConfigRule `json:"cloudConfigurationRule"`
}
GetCloudConfigRuleResponse is returned by GetCloudConfigRule on success
func GetCloudConfigRule ¶
func GetCloudConfigRule( ctx context.Context, client *Client, id string, ) (*GetCloudConfigRuleResponse, error)
GetCloudConfigRule returns a specific CSPM rule that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetConfigurationFindingResponse ¶
type GetConfigurationFindingResponse struct {
ConfigurationFinding ConfigurationFinding `json:"configurationFinding"`
}
GetConfigurationFindingResponse is returned by GetConfigurationFinding on success
func GetConfigurationFinding ¶
func GetConfigurationFinding( ctx context.Context, client *Client, id string, ) (*GetConfigurationFindingResponse, error)
GetConfigurationFinding returns a specific finding that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetControlResponse ¶
type GetControlResponse struct {
Control Control `json:"control"`
}
GetControlResponse is returned by GetControl on success
func GetControl ¶
GetControl returns a specific user that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetIssueResponse ¶
type GetIssueResponse struct {
Issue Issue `json:"issue"`
}
GetIssueResponse is returned by GetIssue on success
type GetProjectResponse ¶
type GetProjectResponse struct {
Project Project `json:"project"`
}
GetProjectResponse is returned by GetProject on success
func GetProject ¶
GetProject returns a specific project that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetSecurityCategoryResponse ¶
type GetSecurityCategoryResponse struct {
SecurityCategory SecurityCategory `json:"securityCategory"`
}
GetSecurityCategoryResponse is returned by GetSecurityCategory on success
func GetSecurityCategory ¶
func GetSecurityCategory( ctx context.Context, client *Client, id string, ) (*GetSecurityCategoryResponse, error)
GetSecurityCategory returns a specific security category that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetSecurityFrameworkResponse ¶
type GetSecurityFrameworkResponse struct {
SecurityFramework SecurityFramework `json:"securityFramework"`
}
GetSecurityFrameworkResponse is returned by GetSecurityFramework on success
func GetSecurityFramework ¶
func GetSecurityFramework( ctx context.Context, client *Client, id string, ) (*GetSecurityFrameworkResponse, error)
GetSecurityFramework returns a specific security framework that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetServiceAccountResponse ¶
type GetServiceAccountResponse struct {
ServiceAccount ServiceAccount `json:"serviceAccount"`
}
GetServiceAccountResponse is returned by GetServiceAccount on success
func GetServiceAccount ¶
func GetServiceAccount( ctx context.Context, client *Client, id string, ) (*GetServiceAccountResponse, error)
GetServiceAccount returns a specific service account that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetSubscriptionResponse ¶
type GetSubscriptionResponse struct {
Subscription Subscription `json:"cloudAccount"`
}
GetSubscriptionResponse is returned by GetSubscription on success
func GetSubscription ¶
func GetSubscription( ctx context.Context, client *Client, id string, ) (*GetSubscriptionResponse, error)
GetSubscription returns a specific subscription that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GetUserResponse ¶
type GetUserResponse struct {
User User `json:"user"`
}
GetUserResponse is returned by GetUser on success
type GetVulnerabilityFindingResponse ¶
type GetVulnerabilityFindingResponse struct {
VulnerabilityFinding VulnerabilityFinding `json:"vulnerabilityFinding"`
}
GetVulnerabilityFindingResponse is returned by GetVulnerabilityFinding on success
func GetVulnerabilityFinding ¶
func GetVulnerabilityFinding( ctx context.Context, client *Client, id string, ) (*GetVulnerabilityFindingResponse, error)
GetVulnerabilityFinding returns a specific vulnerability finding that matches the ID
@param ctx context for configuration
@param client the API client
@param id unique identifier of the resource
type GraphEntity ¶
The graph object
type Issue ¶
type Issue struct {
Control IssueQueryControl `json:"control"`
CreatedAt string `json:"createdAt"`
Description string `json:"description"`
DueAt string `json:"dueAt"`
Entity GraphEntity `json:"entity"`
Id string `json:"id"`
Notes []IssueNote `json:"notes"`
Projects []IssueQueryProject `json:"projects"`
RejectionExpiredAt string `json:"rejectionExpiredAt"`
ResolutionReason string `json:"resolutionReason"`
ResolvedAt string `json:"resolvedAt"`
ServiceTickets []IssueServiceTickets `json:"serviceTickets"`
Severity string `json:"severity"`
Status string `json:"status"`
StatusChangedAt string `json:"statusChangedAt"`
UpdatedAt string `json:"updatedAt"`
}
Issue object
type IssueConnection ¶
type IssueConnection struct {
Nodes []Issue `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the issue
type IssueFilter ¶
type IssueFilter struct {
// Filter Issues created before/after provided date.
CreatedAt DateFilter
// Filter issues using any of securityFramework | securitySubCategory | securityCategory.
FrameworkCategory string
// The control severity.
//
// Possible values are: INFORMATIONAL, LOW, MEDIUM, HIGH, CRITICAL.
Severity string
// Filter issues created by specific control ID.
SourceControl string
// The issue status.
//
// Possible values are: OPEN, IN_PROGRESS, RESOLVED, REJECTED.
Status string
// Filter issues by resolution reason.
//
// Possible values are: OBJECT_DELETED, ISSUE_FIXED, CONTROL_CHANGED, CONTROL_DISABLED, CONTROL_DELETED, FALSE_POSITIVE, EXCEPTION, WONT_FIX.
ResolutionReason string
}
Issue filter object
type IssueNote ¶
type IssueNote struct {
CreatedAt string `json:"createdAt,omitempty"`
Id string `json:"id,omitempty"`
ServiceAccount IssueQueryServiceAccount `json:"serviceAccount,omitempty"`
Text string `json:"text,omitempty"`
UpdatedAt string `json:"updatedAt,omitempty"`
User IssueQueryUser `json:"user,omitempty"`
}
Issue note object
type IssueQueryAutomationAction ¶
type IssueQueryAutomationAction struct {
Id string `json:"id"`
}
Automation action information
type IssueQueryControl ¶
type IssueQueryControl struct {
Id string `json:"id"`
}
Control information
type IssueQueryIntegration ¶
type IssueQueryIntegration struct {
Id string `json:"id"`
}
Integration information
type IssueQueryProject ¶
Project information
type IssueQueryServiceAccount ¶
type IssueQueryServiceAccount struct {
Id string `json:"id"`
}
Service account information
type IssueQueryUser ¶
User information
type IssueServiceTickets ¶
type IssueServiceTickets struct {
Action IssueQueryAutomationAction `json:"action,omitempty"`
ExternalId string `json:"externalId,omitempty"`
Id string `json:"id,omitempty"`
Integration IssueQueryIntegration `json:"integration,omitempty"`
Name string `json:"name,omitempty"`
Project IssueQueryProject `json:"project,omitempty"`
Url string `json:"url,omitempty"`
}
Service ticket object
type ListCloudConfigRulesRequestConfiguration ¶
type ListCloudConfigRulesRequestConfiguration struct {
// Optional - filter CSPM rules by to cloud provider.
//
// Possible values are: AWS, GCP, OCI, Alibaba, Azure, Kubernetes, OpenShift, vSphere.
CloudProvider string
// Optional - filter CSPM Rule by enabled status.
Enabled *bool
// When paginating forwards, the cursor to continue.
EndCursor string
// Optional - if true, all the rule that has auto remediation enabled will be returned.
HasAutoRemediation *bool
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
// Optional - filter CSPM rules related by service type.
//
// Possible values: AKS, AWS, Alibaba, Azure, EKS, GCP, GKE, Kubernetes, OCI, OKE, vSphere.
ServiceType string
// Optional - filter CSPM Rule by severity.
//
// Possible values are: CRITICAL, HIGH, INFORMATIONAL, LOW, MEDIUM.
Severity string
// Optional - if true, rule with support of "near real time" updates will be returned.
SupportsNRT *bool
}
Fields used to filter the cloud configuration rule response
type ListCloudConfigRulesResponse ¶
type ListCloudConfigRulesResponse struct {
CloudConfigRules CloudConfigRuleConnection `json:"cloudConfigurationRules"`
}
ListCloudConfigRulesResponse is returned by ListCloudConfigRules on success
func ListCloudConfigRules ¶
func ListCloudConfigRules( ctx context.Context, client *Client, options *ListCloudConfigRulesRequestConfiguration, ) (*ListCloudConfigRulesResponse, error)
ListCloudConfigRules returns a paginated list of the cloud configuration rules
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListConfigurationFindingsRequestConfiguration ¶
type ListConfigurationFindingsRequestConfiguration struct {
// Optional - return findings detected within the given time range.
AnalyzedAt DateFilter
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
// Optional - filter findings by result.
//
// Possible values are: ERROR, FAIL, NOT_ASSESSED, PASS.
Result string
// Optional - filter findings generated by rule.
RuleId string
// Optional - filter findings by severity.
//
// Possible values: CRITICAL, HIGH, LOW, MEDIUM, NONE.
Severity string
// Optional - filter findings by status.
//
// Possible values: IN_PROGRESS, OPEN, REJECTED, RESOLVED.
Status string
}
Fields used to filter the cloud configuration findings response
type ListConfigurationFindingsResponse ¶
type ListConfigurationFindingsResponse struct {
ConfigurationFindings ConfigurationFindingConnection `json:"configurationFindings"`
}
ListConfigurationFindingsResponse is returned by ListConfigurationFindings on success
func ListConfigurationFindings ¶
func ListConfigurationFindings( ctx context.Context, client *Client, options *ListConfigurationFindingsRequestConfiguration, ) (*ListConfigurationFindingsResponse, error)
ListConfigurationFindings returns a paginated list of cloud configuration findings
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListControlsRequestConfiguration ¶
type ListControlsRequestConfiguration struct {
// Optional - filter controls which are enabled/disabled.
Enabled *bool
// When paginating forwards, the cursor to continue.
EndCursor string
// Optional - filter controls using any of securityFramework | securitySubCategory | securityCategory.
FrameworkCategory string
// Optional - filter controls which their related cloud configuration rule have auto remediation.
HasAutoRemediation *bool
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
// Optional - filter controls by project ID.
Project string
// Optional - filter controls by severity.
//
// Possible values are: CRITICAL, HIGH, INFORMATIONAL, LOW, MEDIUM.
Severity string
// Optional - filter controls by type.
//
// Possible values are: CLOUD_CONFIGURATION, SECURITY_GRAPH.
Type string
}
Fields used to filter the control response
type ListControlsResponse ¶
type ListControlsResponse struct {
Controls ControlConnection `json:"controls"`
}
ListControlsResponse is returned by ListControls on success
func ListControls ¶
func ListControls( ctx context.Context, client *Client, options *ListControlsRequestConfiguration, ) (*ListControlsResponse, error)
ListControls returns a paginated list of the security controls
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListIssuesRequestConfiguration ¶
type ListIssuesRequestConfiguration struct {
// When paginating forwards, the cursor to continue.
EndCursor string
// Optional - filters object
Filter *IssueFilter
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
}
Fields used to filter the issue response
type ListIssuesResponse ¶
type ListIssuesResponse struct {
Issues IssueConnection `json:"issues"`
}
ListIssuesResponse is returned by ListIssues on success
func ListIssues ¶
func ListIssues( ctx context.Context, client *Client, options *ListIssuesRequestConfiguration, ) (*ListIssuesResponse, error)
ListIssues returns a paginated list of all the issues
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListProjectsRequestConfiguration ¶
type ListProjectsRequestConfiguration struct {
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 100.
Limit int
}
Fields used to filter the project response
type ListProjectsResponse ¶
type ListProjectsResponse struct {
Projects ProjectConnection `json:"projects"`
}
ListProjectsResponse is returned by ListProjects on success
func ListProjects ¶
func ListProjects( ctx context.Context, client *Client, options *ListProjectsRequestConfiguration, ) (*ListProjectsResponse, error)
ListProjects returns a paginated list of the project
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListSecurityCategoriesRequestConfiguration ¶
type ListSecurityCategoriesRequestConfiguration struct {
// Optional - filter security categories of specific framework ID.
FrameworkId string
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
}
Fields used to filter the security category response
type ListSecurityCategoriesResponse ¶
type ListSecurityCategoriesResponse struct {
SecurityCategories SecurityCategoryConnection `json:"securityCategories"`
}
ListSecurityCategoriesResponse is returned by ListSecurityCategories on success
func ListSecurityCategories ¶
func ListSecurityCategories( ctx context.Context, client *Client, options *ListSecurityCategoriesRequestConfiguration, ) (*ListSecurityCategoriesResponse, error)
ListSecurityCategories returns a paginated list of security category
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListSecurityFrameworksRequestConfiguration ¶
type ListSecurityFrameworksRequestConfiguration struct {
// Optional - filter security frameworks which are enabled/disabled.
Enabled *bool
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
}
Fields used to filter the security framework response
type ListSecurityFrameworksResponse ¶
type ListSecurityFrameworksResponse struct {
SecurityFrameworks SecurityFrameworkConnection `json:"securityFrameworks"`
}
ListSecurityFrameworksResponse is returned by ListSecurityFrameworks on success
func ListSecurityFrameworks ¶
func ListSecurityFrameworks( ctx context.Context, client *Client, options *ListSecurityFrameworksRequestConfiguration, ) (*ListSecurityFrameworksResponse, error)
ListSecurityFrameworks returns a paginated list of compliance frameworks
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListServiceAccountsRequestConfiguration ¶
type ListServiceAccountsRequestConfiguration struct {
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 60.
Limit int
// Optional - the name of the service account.
Name string
// Optional - the service account authentication source.
//
// Possible values: LEGACY, MODERN. Default set to MODERN.
Source string
// Optional - the service account type.
//
// Possible values are: THIRD_PARTY, SENSOR, KUBERNETES_ADMISSION_CONTROLLER, BROKER.
Type string
}
Fields used to filter the service account response
type ListServiceAccountsResponse ¶
type ListServiceAccountsResponse struct {
ServiceAccounts ServiceAccountConnection `json:"serviceAccounts"`
}
ListServiceAccountsResponse is returned by ListServiceAccounts on success
func ListServiceAccounts ¶
func ListServiceAccounts( ctx context.Context, client *Client, options *ListServiceAccountsRequestConfiguration, ) (*ListServiceAccountsResponse, error)
ListServiceAccounts returns a paginated list of the service accounts
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListSubscriptionsRequestConfiguration ¶
type ListSubscriptionsRequestConfiguration struct {
// Optional - filter subscriptions of specific cloud provider.
//
// Possible values are: AWS, GCP, OCI, Alibaba, Azure, Kubernetes, OpenShift, vSphere.
CloudProvider string
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 500.
Limit int
// Optional - filter subscriptions by it's status.
//
// Possible values: CONNECTED, DISABLED, DISCONNECTED, DISCOVERED, ERROR, INITIAL_SCANNING, PARTIALLY_CONNECTED.
Status string
}
Fields used to filter the subscription response
type ListSubscriptionsResponse ¶
type ListSubscriptionsResponse struct {
Subscriptions SubscriptionConnection `json:"cloudAccounts"`
}
ListSubscriptionsResponse is returned by ListSubscriptions on success
func ListSubscriptions ¶
func ListSubscriptions( ctx context.Context, client *Client, options *ListSubscriptionsRequestConfiguration, ) (*ListSubscriptionsResponse, error)
ListSubscriptions returns a paginated list of the cloud account subscriptions
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListUserRolesRequestConfiguration ¶
type ListUserRolesRequestConfiguration struct {
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 100.
Limit int
}
type ListUserRolesResponse ¶
type ListUserRolesResponse struct {
UserRoles UserRoleConnection `json:"userRoles"`
}
ListUserRolesResponse is returned by ListUserRoles on success
func ListUserRoles ¶
func ListUserRoles( ctx context.Context, client *Client, options *ListUserRolesRequestConfiguration, ) (*ListUserRolesResponse, error)
ListUserRoles returns a paginated list of the available user roles
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListUsersRequestConfiguration ¶
type ListUsersRequestConfiguration struct {
// Optional - filter by provider type.
//
// Possible values are: WIZ, SAML.
AuthProviderType string
// When paginating forwards, the cursor to continue.
EndCursor string
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 100.
Limit int
}
Fields used to filter the user response
type ListUsersResponse ¶
type ListUsersResponse struct {
Users UserConnection `json:"users"`
}
ListUsersResponse is returned by ListUsers on success
func ListUsers ¶
func ListUsers( ctx context.Context, client *Client, options *ListUsersRequestConfiguration, ) (*ListUsersResponse, error)
ListUsers returns a paginated list of the portal users
@param ctx context for configuration
@param client the API client
@param options the API parameters
type ListVulnerabilityFindingsRequestConfiguration ¶
type ListVulnerabilityFindingsRequestConfiguration struct {
// Optional - return only vulnerability findings found via the specified detection method.
//
// Possible values are: PACKAGE, DEFAULT_PACKAGE, LIBRARY, CONFIG_FILE, OPEN_PORT, STARTUP_SERVICE, CONFIGURATION, CLONED_REPOSITORY, OS, ARTIFACTS_ON_DISK, WINDOWS_REGISTRY, INSTALLED_PROGRAM, WINDOWS_SERVICE, INSTALLED_PROGRAM_BY_SERVICE, FILE_PATH, UNKNOWN.
DetectionMethod string
// Optional - return only vulnerability findings for vulnerabilities with an available fix.
HasFix *bool
// When paginating forwards, the cursor to continue.
EndCursor string
// Optional - return only vulnerability findings for vulnerabilities with an available CISA KEV exploit.
HasCisaKevExploit *bool
// Optional - return only vulnerability findings for vulnerabilities with an available exploit.
HasExploit *bool
// The maximum number of results to return in a single call. To retrieve the
// remaining results, make another call with the returned EndCursor value.
//
// Maximum limit is 5000.
Limit int
// Optional - filter by vulnerability vendor severity.
//
// Possible values are: NONE, LOW, MEDIUM, HIGH, CRITICAL.
VendorSeverity string
// Optional - filter by finding status.
//
// Possible values are: UNRESOLVED, RESOLVED, PASSED, IGNORED.
Status string
// Optional - return only vulnerability findings whose external ID matches.
VulnerabilityExternalId string
}
Fields used to filter the vulnerability finding response
type ListVulnerabilityFindingsResponse ¶
type ListVulnerabilityFindingsResponse struct {
VulnerabilityFindings VulnerabilityFindingConnection `json:"vulnerabilityFindings"`
}
ListVulnerabilityFindingsResponse is returned by ListVulnerabilityFindings on success
func ListVulnerabilityFindings ¶
func ListVulnerabilityFindings( ctx context.Context, client *Client, options *ListVulnerabilityFindingsRequestConfiguration, ) (*ListVulnerabilityFindingsResponse, error)
ListVulnerabilityFindings returns a paginated list of the vulnerabilities detected on the cloud resources
@param ctx context for configuration
@param client the API client
@param options the API parameters
type Project ¶
type Project struct {
Archived bool `json:"archived"`
BusinessUnit string `json:"businessUnit"`
CloudAccountCount int `json:"cloudAccountCount"`
CloudOrganizationCount int `json:"cloudOrganizationCount"`
Description string `json:"description"`
EntityCount int `json:"entityCount"`
Id string `json:"id"`
Identifiers []string `json:"identifiers"`
KubernetesClusterCount int `json:"kubernetesClusterCount"`
Name string `json:"name"`
ProfileCompletion int `json:"profileCompletion"`
ProjectOwners []ProjectOwner `json:"projectOwners"`
RepositoryCount int `json:"repositoryCount"`
ResourceTagLinks []ProjectResourceTagLinks `json:"resourceTagLinks"`
RiskProfile ProjectRiskProfile `json:"riskProfile"`
SecurityScore int `json:"securityScore"`
Slug string `json:"slug"`
TeamMemberCount int `json:"teamMemberCount"`
TechnologyCount int `json:"technologyCount"`
WorkloadCount int `json:"workloadCount"`
}
Project object
type ProjectConnection ¶
type ProjectConnection struct {
Nodes []Project `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the project
type ProjectResourceTagLinks ¶
type ProjectResourceTagLinks struct {
Environment string `json:"environment"`
ResourceTags []ResourceTag `json:"resourceTags"`
}
Project resource tags link object
type ProjectRiskProfile ¶
type ProjectRiskProfile struct {
BusinessImpact string `json:"businessImpact"`
}
Risk profile object
type ResourceTag ¶
Resource tag object
type SecurityCategory ¶
type SecurityCategory struct {
Description string `json:"description"`
Framework SecurityCategoryQueryFramework `json:"framework"`
Id string `json:"id"`
Name string `json:"name"`
SubCategories []SecuritySubCategory `json:"subCategories"`
}
Security category object
type SecurityCategoryConnection ¶
type SecurityCategoryConnection struct {
Nodes []SecurityCategory `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the security category
type SecurityCategoryQueryCategory ¶
type SecurityCategoryQueryCategory struct {
Id string `json:"id"`
}
type SecurityCategoryQueryFramework ¶
type SecurityCategoryQueryFramework struct {
Id string `json:"id"`
}
type SecurityFramework ¶
type SecurityFramework struct {
BuiltIn bool `json:"builtin"`
Categories []SecurityFrameworkQueryCategory `json:"categories"`
Description string `json:"description"`
Enabled bool `json:"enabled"`
Id string `json:"id"`
Name string `json:"name"`
PolicyTypes []string `json:"policyTypes"`
}
Security framework object
type SecurityFrameworkConnection ¶
type SecurityFrameworkConnection struct {
Nodes []SecurityFramework `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the security framework
type SecurityFrameworkQueryCategory ¶
type SecurityFrameworkQueryCategory struct {
Id string `json:"id"`
}
type SecuritySubCategory ¶
type SecuritySubCategory struct {
Description string `json:"description"`
Id string `json:"id"`
ResolutionRecommendation string `json:"resolutionRecommendation"`
Title string `json:"title"`
}
Security sub-category object
type ServiceAccount ¶
type ServiceAccount struct {
AssignedProjects []ServiceAccountQueryProject `json:"assignedProjects"`
AuthenticationSource string `json:"authenticationSource"`
ClientId string `json:"clientId"`
CreatedAt string `json:"createdAt"`
Id string `json:"id"`
LastRotatedAt string `json:"lastRotatedAt"`
Name string `json:"name"`
Scopes []string `json:"scopes"`
Type string `json:"type"`
}
Service account object
type ServiceAccountConnection ¶
type ServiceAccountConnection struct {
Nodes []ServiceAccount `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the service account
type ServiceAccountQueryProject ¶
type ServiceAccountQueryProject struct {
Id string `json:"id"`
}
Assigned project information
type Subscription ¶
type Subscription struct {
CloudProvider string `json:"cloudProvider"`
ContainerCount int `json:"containerCount"`
ExternalId string `json:"externalId"`
Id string `json:"id"`
LastScannedAt string `json:"lastScannedAt"`
LinkedProjects []SubscriptionQueryProject `json:"linkedProjects"`
Name string `json:"name"`
ResourceCount int `json:"resourceCount"`
Status string `json:"status"`
VirtualMachineCount int `json:"virtualMachineCount"`
}
Subscription object
type SubscriptionConnection ¶
type SubscriptionConnection struct {
Nodes []Subscription `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the subscription
type SubscriptionQueryProject ¶
type SubscriptionQueryProject struct {
Id string `json:"id"`
}
Assigned project information
type User ¶
type User struct {
CreatedAt string `json:"createdAt"`
EffectiveAssignedProjects []UserQueryProject `json:"effectiveAssignedProjects"`
Email string `json:"email"`
Id string `json:"id"`
IdentityProviderType string `json:"identityProviderType"`
IpAddress string `json:"ipAddress"`
IsAnalyticsEnabled bool `json:"isAnalyticsEnabled"`
IsSuspended bool `json:"isSuspended"`
LastLoginAt string `json:"lastLoginAt"`
Name string `json:"name"`
Role UserRole `json:"role"`
Tenant Tenant `json:"tenant"`
}
User object
type UserConnection ¶
type UserConnection struct {
Nodes []User `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the user
type UserQueryProject ¶
type UserQueryProject struct {
Id string `json:"id"`
}
Assigned project information
type UserRole ¶
type UserRole struct {
Description string `json:"description"`
Id string `json:"id"`
IsProjectScoped bool `json:"isProjectScoped"`
Name string `json:"name"`
Scopes []string `json:"scopes"`
}
User role object
type UserRoleConnection ¶
type UserRoleConnection struct {
Nodes []UserRole `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the user-role
type VulnerabilityFinding ¶
type VulnerabilityFinding struct {
CVEDescription string `json:"CVEDescription"`
CVSSSeverity string `json:"CVSSSeverity"`
Description string `json:"description"`
DetailedName string `json:"detailedName"`
DetectionMethod string `json:"detectionMethod"`
ExploitabilityScore float64 `json:"exploitabilityScore"`
FirstDetectedAt string `json:"firstDetectedAt"`
FixedVersion string `json:"fixedVersion"`
HasCisaKevExploit bool `json:"hasCisaKevExploit"`
HasExploit bool `json:"hasExploit"`
Id string `json:"id"`
ImpactScore float64 `json:"impactScore"`
LastDetectedAt string `json:"lastDetectedAt"`
Link string `json:"link"`
LocationPath string `json:"locationPath"`
Name string `json:"name"`
PortalUrl string `json:"portalUrl"`
Remediation string `json:"remediation"`
ResolutionReason string `json:"resolutionReason"`
ResolvedAt string `json:"resolvedAt"`
Score float64 `json:"score"`
Severity string `json:"severity"`
Status string `json:"status"`
Version string `json:"version"`
VulnerabilityExternalId string `json:"vulnerabilityExternalId"`
VulnerableAsset VulnerableAsset `json:"vulnerableAsset"`
}
Vulnerability finding object
type VulnerabilityFindingConnection ¶
type VulnerabilityFindingConnection struct {
Nodes []VulnerabilityFinding `json:"nodes"`
PageInfo PageInfo `json:"pageInfo"`
TotalCount int `json:"totalCount"`
}
Relay-style node for the vulnerability finding
type VulnerableAsset ¶
type VulnerableAsset struct {
CloudPlatform string `json:"cloudPlatform,omitempty"`
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
OperatingSystem string `json:"operatingSystem,omitempty"`
SubscriptionId string `json:"subscriptionId,omitempty"`
Tags interface{} `json:"tags,omitempty"`
Type string `json:"type,omitempty"`
}
Vulnerability asset object