Documentation ¶
Overview ¶
Package appsec provides access to the Akamai Application Security APIs
Index ¶
- Constants
- Variables
- type APIRequestConstraintsexp
- type APPSEC
- type ActionType
- type Activation
- type ActivationConfigs
- type ActivationValue
- type Activations
- type AdvancedExceptions
- type AdvancedOptionsexp
- type AdvancedSettingsCookies
- type AdvancedSettingsCustomHeaders
- type AdvancedSettingsEvasivePathMatch
- type AdvancedSettingsLogging
- type AdvancedSettingsPragma
- type AdvancedSettingsPrefetch
- type AdvancedSettingsStandardHeaders
- type ApiConstraintsProtection
- type ApiEndpoint
- type ApiEndpoints
- type ApiHostnameCoverage
- type ApiHostnameCoverageMatchTargets
- type ApiHostnameCoverageOverlapping
- type ApiRequestConstraints
- type AtomicConditionsexp
- type AttackGroup
- type AttackGroupAdvancedCriteria
- type AttackGroupAdvancedExceptions
- type AttackGroupConditionException
- type AttackGroupConditions
- type AttackGroupException
- type AttackGroupHeaderCookieOrParamValuesAdvanced
- type AttackGroupRecommendation
- type AttackGroupSpecificHeaderCookieOrParamNameValAdvanced
- type AttackGroupSpecificHeaderCookieParamXMLOrJSONNames
- type AttackGroupSpecificHeaderCookieParamXMLOrJSONNamesAdvanced
- type AutoGenerated
- type BypassNetworkList
- type BypassNetworkLists
- type ClientFunc
- type ClientReputationReputationProfileActions
- type ConditionReputationProfile
- type ConditionsExp
- type ConditionsValue
- type Configuration
- type ConfigurationClone
- type ConfigurationHostnameCoverage
- type ConfigurationVersion
- type ConfigurationVersionClone
- type ContractsGroups
- type CreateActivationsRequest
- type CreateActivationsResponse
- type CreateConfigurationCloneRequest
- type CreateConfigurationCloneResponse
- type CreateConfigurationRequest
- type CreateConfigurationResponse
- type CreateConfigurationVersionCloneRequest
- type CreateConfigurationVersionCloneResponse
- type CreateCustomDenyRequest
- type CreateCustomDenyResponse
- type CreateCustomRuleRequest
- type CreateCustomRuleResponse
- type CreateMalwarePolicyRequest
- type CreateMatchTargetRequest
- type CreateMatchTargetResponse
- type CreateRatePolicyRequest
- type CreateRatePolicyResponse
- type CreateReputationProfileRequest
- type CreateReputationProfileResponse
- type CreateSecurityPolicyClonePost
- type CreateSecurityPolicyClonePostResponse
- type CreateSecurityPolicyCloneRequest
- type CreateSecurityPolicyCloneResponse
- type CreateSecurityPolicyRequest
- type CreateSecurityPolicyResponse
- type CustomDeny
- type CustomDenyListexp
- type CustomRule
- type CustomRuleAction
- type CustomRuleActionsexp
- type CustomRuleConditionsName
- type CustomRuleConditionsValue
- type CustomRuleEffectivePeriod
- type CustomRuleResponse
- type DurationThresholdExp
- type Error
- type Eval
- type EvalGroup
- type EvalHost
- type EvalPenaltyBox
- type EvalProtectHost
- type EvalRule
- type EvaluatingSecurityPolicy
- type Evaluationexp
- type EvasivePathMatchexp
- type Evidences
- type ExcludeCondition
- type ExportConfiguration
- type FailoverHostnames
- type GeoControlsList
- type GetAPIConstraintsProtectionRequest
- type GetAPIConstraintsProtectionResponse
- type GetActivationHistoryRequest
- type GetActivationHistoryResponse
- type GetActivationsRequest
- type GetActivationsResponse
- type GetAdvancedSettingsEvasivePathMatchRequest
- type GetAdvancedSettingsEvasivePathMatchResponse
- type GetAdvancedSettingsLoggingRequest
- type GetAdvancedSettingsLoggingResponse
- type GetAdvancedSettingsPragmaRequest
- type GetAdvancedSettingsPragmaResponse
- type GetAdvancedSettingsPrefetchRequest
- type GetAdvancedSettingsPrefetchResponse
- type GetApiEndpointsRequest
- type GetApiEndpointsResponse
- type GetApiHostnameCoverageMatchTargetsRequest
- type GetApiHostnameCoverageMatchTargetsResponse
- type GetApiHostnameCoverageOverlappingRequest
- type GetApiHostnameCoverageOverlappingResponse
- type GetApiHostnameCoverageRequest
- type GetApiHostnameCoverageResponse
- type GetApiRequestConstraintsRequest
- type GetApiRequestConstraintsResponse
- type GetAttackGroupRecommendationsRequest
- type GetAttackGroupRecommendationsResponse
- type GetAttackGroupRequest
- type GetAttackGroupResponse
- type GetAttackGroupsRequest
- type GetAttackGroupsResponse
- type GetBypassNetworkListsRequest
- type GetBypassNetworkListsResponse
- type GetConfigurationCloneRequest
- type GetConfigurationCloneResponse
- type GetConfigurationRequest
- type GetConfigurationResponse
- type GetConfigurationVersionCloneRequest
- type GetConfigurationVersionCloneResponse
- type GetConfigurationVersionsRequest
- type GetConfigurationVersionsResponse
- type GetConfigurationsRequest
- type GetConfigurationsResponse
- type GetContractsGroupsRequest
- type GetContractsGroupsResponse
- type GetCustomDenyListRequest
- type GetCustomDenyListResponse
- type GetCustomDenyRequest
- type GetCustomDenyResponse
- type GetCustomRuleActionRequest
- type GetCustomRuleActionResponse
- type GetCustomRuleActionsRequest
- type GetCustomRuleActionsResponse
- type GetCustomRuleRequest
- type GetCustomRuleResponse
- type GetCustomRulesRequest
- type GetCustomRulesResponse
- type GetEvalHostRequest
- type GetEvalHostResponse
- type GetEvalHostsRequest
- type GetEvalHostsResponse
- type GetEvalProtectHostRequest
- type GetEvalProtectHostResponse
- type GetEvalProtectHostsRequest
- type GetEvalProtectHostsResponse
- type GetEvalRequest
- type GetEvalResponse
- type GetEvalRuleRequest
- type GetEvalRuleResponse
- type GetEvalRulesRequest
- type GetEvalRulesResponse
- type GetEvalsRequest
- type GetEvalsResponse
- type GetExportConfigurationRequest
- type GetExportConfigurationResponse
- type GetExportConfigurationsRequest
- type GetExportConfigurationsResponse
- type GetFailoverHostnamesRequest
- type GetFailoverHostnamesResponse
- type GetIPGeoProtectionRequest
- type GetIPGeoProtectionResponse
- type GetIPGeoProtectionsRequest
- type GetIPGeoProtectionsResponse
- type GetIPGeoRequest
- type GetIPGeoResponse
- type GetMalwareContentTypesRequest
- type GetMalwareContentTypesResponse
- type GetMalwarePoliciesRequest
- type GetMalwarePolicyActionsRequest
- type GetMalwarePolicyActionsResponse
- type GetMalwarePolicyRequest
- type GetMalwareProtectionRequest
- type GetMalwareProtectionResponse
- type GetMalwareProtectionsRequest
- type GetMalwareProtectionsResponse
- type GetMatchTargetRequest
- type GetMatchTargetResponse
- type GetMatchTargetSequenceRequest
- type GetMatchTargetSequenceResponse
- type GetMatchTargetsRequest
- type GetMatchTargetsResponse
- type GetNetworkLayerProtectionRequest
- type GetNetworkLayerProtectionResponse
- type GetNetworkLayerProtectionsRequest
- type GetNetworkLayerProtectionsResponse
- type GetPenaltyBoxRequest
- type GetPenaltyBoxResponse
- type GetPenaltyBoxesRequest
- type GetPenaltyBoxesResponse
- type GetPolicyProtectionsRequest
- type GetRatePoliciesRequest
- type GetRatePoliciesResponse
- type GetRatePolicyActionRequest
- type GetRatePolicyActionResponse
- type GetRatePolicyActionsRequest
- type GetRatePolicyActionsResponse
- type GetRatePolicyRequest
- type GetRatePolicyResponse
- type GetRateProtectionRequest
- type GetRateProtectionResponse
- type GetRateProtectionsRequest
- type GetRateProtectionsResponse
- type GetReputationAnalysisRequest
- type GetReputationAnalysisResponse
- type GetReputationProfileActionRequest
- type GetReputationProfileActionResponse
- type GetReputationProfileActionsRequest
- type GetReputationProfileActionsResponse
- type GetReputationProfileRequest
- type GetReputationProfileResponse
- type GetReputationProfileResponseCondition
- type GetReputationProfilesRequest
- type GetReputationProfilesResponse
- type GetReputationProtectionRequest
- type GetReputationProtectionResponse
- type GetReputationProtectionsRequest
- type GetReputationProtectionsResponse
- type GetRuleRecommendationsRequest
- type GetRuleRecommendationsResponse
- type GetRuleRequest
- type GetRuleResponse
- type GetRuleUpgradeRequest
- type GetRuleUpgradeResponse
- type GetRulesRequest
- type GetRulesResponse
- type GetSecurityPoliciesRequest
- type GetSecurityPoliciesResponse
- type GetSecurityPolicyCloneRequest
- type GetSecurityPolicyCloneResponse
- type GetSecurityPolicyClonesRequest
- type GetSecurityPolicyClonesResponse
- type GetSecurityPolicyRequest
- type GetSecurityPolicyResponse
- type GetSelectableHostnamesRequest
- type GetSelectableHostnamesResponse
- type GetSelectedHostnameRequest
- type GetSelectedHostnameResponse
- type GetSelectedHostnamesRequest
- type GetSelectedHostnamesResponse
- type GetSiemDefinitionsRequest
- type GetSiemDefinitionsResponse
- type GetSiemSettingRequest
- type GetSiemSettingResponse
- type GetSiemSettingsRequest
- type GetSiemSettingsResponse
- type GetSlowPostProtectionRequest
- type GetSlowPostProtectionResponse
- type GetSlowPostProtectionSettingRequest
- type GetSlowPostProtectionSettingResponse
- type GetSlowPostProtectionSettingsRequest
- type GetSlowPostProtectionSettingsResponse
- type GetSlowPostProtectionsRequest
- type GetSlowPostProtectionsResponse
- type GetThreatIntelRequest
- type GetThreatIntelResponse
- type GetTuningRecommendationsRequest
- type GetTuningRecommendationsResponse
- type GetVersionNotesRequest
- type GetVersionNotesResponse
- type GetWAFModeRequest
- type GetWAFModeResponse
- type GetWAFModesRequest
- type GetWAFModesResponse
- type GetWAFProtectionRequest
- type GetWAFProtectionResponse
- type GetWAFProtectionsRequest
- type GetWAFProtectionsResponse
- type GetWAPBypassNetworkListsRequest
- type GetWAPBypassNetworkListsResponse
- type GetWAPSelectedHostnamesRequest
- type GetWAPSelectedHostnamesResponse
- type GroupData
- type HeaderCookieOrParamValuesattackgroup
- type Hostname
- type HostnameCoverageMatchTargetBypassNetworkLists
- type HostnameCoverageMatchTargetEffectiveSecurityControls
- type Hostnames
- type IPControlsLists
- type IPGeo
- type IPGeoFirewall
- type IPGeoGeoControls
- type IPGeoIPControls
- type IPGeoNetworkLists
- type IPGeoProtection
- type IPNetworkListsList
- type LoggingOverridesexp
- type Loggingexp
- type MalwareContentTypes
- type MalwarePoliciesResponse
- type MalwarePolicy
- type MalwarePolicyAction
- type MalwarePolicyActionBody
- type MalwarePolicyBody
- type MalwarePolicyResponse
- type MalwareProtection
- type MatchTarget
- type MatchTargetItem
- type MatchTargetSequence
- type NetworkLayerProtection
- type NetworkListsStruct
- type NetworkValue
- type Option
- type PenaltyBox
- type PenaltyBoxexp
- type Policies
- type PolicyProtections
- type PolicyProtectionsResponse
- type ProtectionsResponse
- type RatePoliciesHosts
- type RatePoliciesPath
- type RatePoliciesPathValues
- type RatePoliciesQueryParameters
- type RatePoliciesQueryParametersValues
- type RatePolicy
- type RatePolicyAPISelectors
- type RatePolicyAction
- type RatePolicyActionPost
- type RatePolicyActionsexp
- type RatePolicyBodyParameters
- type RatePolicyFileExtensions
- type RatePolicyMatchOption
- type RatePolicyPath
- type RatePolicyQueryParameters
- type RateProtection
- type RemoveActivationsRequest
- type RemoveActivationsResponse
- type RemoveAdvancedSettingsEvasivePathMatchRequest
- type RemoveAdvancedSettingsEvasivePathMatchResponse
- type RemoveAdvancedSettingsLoggingRequest
- type RemoveAdvancedSettingsLoggingResponse
- type RemoveAdvancedSettingsPrefetchRequest
- type RemoveAdvancedSettingsPrefetchResponse
- type RemoveApiRequestConstraintsRequest
- type RemoveApiRequestConstraintsResponse
- type RemoveBypassNetworkListsRequest
- type RemoveBypassNetworkListsResponse
- type RemoveConfigurationRequest
- type RemoveConfigurationResponse
- type RemoveConfigurationVersionCloneRequest
- type RemoveConfigurationVersionCloneResponse
- type RemoveCustomDenyRequest
- type RemoveCustomDenyResponse
- type RemoveCustomRuleRequest
- type RemoveCustomRuleResponse
- type RemoveEvalHostRequest
- type RemoveEvalHostResponse
- type RemoveEvalRequest
- type RemoveEvalResponse
- type RemoveMalwarePolicyRequest
- type RemoveMatchTargetRequest
- type RemoveMatchTargetResponse
- type RemoveNetworkLayerProtectionRequest
- type RemoveNetworkLayerProtectionResponse
- type RemovePolicyProtectionsRequest
- type RemoveRatePolicyRequest
- type RemoveRatePolicyResponse
- type RemoveReputationAnalysisRequest
- type RemoveReputationAnalysisResponse
- type RemoveReputationProfileRequest
- type RemoveReputationProfileResponse
- type RemoveReputationProtectionRequest
- type RemoveReputationProtectionResponse
- type RemoveSecurityPolicyRequest
- type RemoveSecurityPolicyResponse
- type RemoveSiemSettingsRequest
- type RemoveSiemSettingsResponse
- type RemoveWAPBypassNetworkListsRequest
- type RemoveWAPBypassNetworkListsResponse
- type ReputationAnalysis
- type ReputationProfile
- type ReputationProfileAction
- type ReputationProfileActionPost
- type ReputationProfileActionsexp
- type ReputationProfileCondition
- type ReputationProtection
- type Rule
- type RuleConditionException
- type RuleConditions
- type RuleData
- type RuleException
- type RuleRecommendation
- type RuleUpgrade
- type RulesetType
- type RulesetUpdateData
- type RulesetsRules
- type SecurityPoliciesPenaltyBox
- type SecurityPoliciesRatePolicyActions
- type SecurityPolicy
- type SecurityPolicyClone
- type SecurityPolicyCloneResponse
- type SelectableHostnames
- type SelectedHostname
- type SiemDefinitions
- type SiemSettings
- type Siemexp
- type SlowPostProtection
- type SlowPostProtectionSetting
- type SlowPostProtectionSettingDurationThreshold
- type SlowPostProtectionSettingSlowRateThreshold
- type SlowPostexp
- type SlowRateThresholdExp
- type SpecificHeaderCookieOrParamNameValuePtr
- type SpecificHeaderCookieOrParamNameValueexp
- type SpecificHeaderCookieOrParamNamesPtr
- type SpecificHeaderCookieOrParamPrefixPtr
- type SpecificHeaderCookieParamXMLOrJSONNames
- type StatusValue
- type ThreatIntel
- type TuningRecommendations
- type UpdateAPIConstraintsProtectionRequest
- type UpdateAPIConstraintsProtectionResponse
- type UpdateAdvancedSettingsEvasivePathMatchRequest
- type UpdateAdvancedSettingsEvasivePathMatchResponse
- type UpdateAdvancedSettingsLoggingRequest
- type UpdateAdvancedSettingsLoggingResponse
- type UpdateAdvancedSettingsPragmaRequest
- type UpdateAdvancedSettingsPragmaResponse
- type UpdateAdvancedSettingsPrefetchRequest
- type UpdateAdvancedSettingsPrefetchResponse
- type UpdateApiRequestConstraintsRequest
- type UpdateApiRequestConstraintsResponse
- type UpdateAttackGroupRequest
- type UpdateAttackGroupResponse
- type UpdateBypassNetworkListsRequest
- type UpdateBypassNetworkListsResponse
- type UpdateConditionExceptionRequest
- type UpdateConditionExceptionResponse
- type UpdateConfigurationRequest
- type UpdateConfigurationResponse
- type UpdateCustomDenyRequest
- type UpdateCustomDenyResponse
- type UpdateCustomRuleActionRequest
- type UpdateCustomRuleActionResponse
- type UpdateCustomRuleRequest
- type UpdateCustomRuleResponse
- type UpdateEvalHostRequest
- type UpdateEvalHostResponse
- type UpdateEvalProtectHostRequest
- type UpdateEvalProtectHostResponse
- type UpdateEvalRequest
- type UpdateEvalResponse
- type UpdateEvalRuleRequest
- type UpdateEvalRuleResponse
- type UpdateIPGeoProtectionRequest
- type UpdateIPGeoProtectionResponse
- type UpdateIPGeoRequest
- type UpdateIPGeoResponse
- type UpdateMalwarePolicyActionRequest
- type UpdateMalwarePolicyActionResponse
- type UpdateMalwarePolicyActionsRequest
- type UpdateMalwarePolicyActionsResponse
- type UpdateMalwarePolicyRequest
- type UpdateMalwareProtectionRequest
- type UpdateMalwareProtectionResponse
- type UpdateMatchTargetRequest
- type UpdateMatchTargetResponse
- type UpdateMatchTargetSequenceRequest
- type UpdateMatchTargetSequenceResponse
- type UpdateNetworkLayerProtectionRequest
- type UpdateNetworkLayerProtectionResponse
- type UpdatePenaltyBoxRequest
- type UpdatePenaltyBoxResponse
- type UpdatePolicyProtectionsRequest
- type UpdateRatePolicyActionRequest
- type UpdateRatePolicyActionResponse
- type UpdateRatePolicyRequest
- type UpdateRatePolicyResponse
- type UpdateRateProtectionRequest
- type UpdateRateProtectionResponse
- type UpdateReputationAnalysisRequest
- type UpdateReputationAnalysisResponse
- type UpdateReputationProfileActionRequest
- type UpdateReputationProfileActionResponse
- type UpdateReputationProfileRequest
- type UpdateReputationProfileResponse
- type UpdateReputationProtectionRequest
- type UpdateReputationProtectionResponse
- type UpdateRuleRequest
- type UpdateRuleResponse
- type UpdateRuleUpgradeRequest
- type UpdateRuleUpgradeResponse
- type UpdateSecurityPolicyRequest
- type UpdateSecurityPolicyResponse
- type UpdateSelectedHostnameRequest
- type UpdateSelectedHostnameResponse
- type UpdateSelectedHostnamesRequest
- type UpdateSelectedHostnamesResponse
- type UpdateSiemSettingsRequest
- type UpdateSiemSettingsResponse
- type UpdateSlowPostProtectionRequest
- type UpdateSlowPostProtectionResponse
- type UpdateSlowPostProtectionSettingRequest
- type UpdateSlowPostProtectionSettingResponse
- type UpdateThreatIntelRequest
- type UpdateThreatIntelResponse
- type UpdateVersionNotesRequest
- type UpdateVersionNotesResponse
- type UpdateWAFModeRequest
- type UpdateWAFModeResponse
- type UpdateWAFProtectionRequest
- type UpdateWAFProtectionResponse
- type UpdateWAPBypassNetworkListsRequest
- type UpdateWAPBypassNetworkListsResponse
- type UpdateWAPSelectedHostnamesRequest
- type UpdateWAPSelectedHostnamesResponse
- type VersionNotes
- type WAFMode
- type WAFProtection
- type WAPBypassNetworkLists
- type WAPSelectedHostnames
- type WebApplicationFirewallEvaluation
Constants ¶
const ( // ActivationTypeActivate is used to activate a configuration. ActivationTypeActivate ActivationValue = "ACTIVATE" // ActivationTypeDeactivate is used to deactivate a configuration. ActivationTypeDeactivate ActivationValue = "DEACTIVATE" // NetworkProduction is used to activate/deactivate a configuration in the production network. NetworkProduction NetworkValue = "PRODUCTION" // NetworkStaging is used to activate/deactivate a configuration in the staging network. NetworkStaging NetworkValue = "STAGING" // StatusActive indicates that a configuration has been activated. StatusActive StatusValue = "ACTIVATED" // StatusInactive indicates that a configuration is inactive. StatusInactive StatusValue = "INACTIVE" // StatusPending indicates that an activation/deactivation request has been received. StatusPending StatusValue = "RECEIVED" // StatusAborted indicates that an activation/deactivation request has been aborted. StatusAborted StatusValue = "ABORTED" // StatusFailed indicates that an activation/deactivation request has failed. StatusFailed StatusValue = "FAILED" // StatusDeactivated indicates that an configuration has been deactivated. StatusDeactivated StatusValue = "DEACTIVATED" // StatusPendingDeactivation indicates that a deactivation request is in progress. StatusPendingDeactivation StatusValue = "PENDING_DEACTIVATION" // StatusNew indicates that a deactivation request is new. StatusNew StatusValue = "NEW" )
const ( // RulesetTypeActive for active rulesets. RulesetTypeActive RulesetType = "active" // RulesetTypeEvaluation for evaluation rulesets. RulesetTypeEvaluation RulesetType = "evaluation" // ActionTypeDeny firewall deny action. ActionTypeDeny ActionType = "deny" // ActionTypeAlert firewall alert action. ActionTypeAlert ActionType = "alert" // ActionTypeNone firewall no action. ActionTypeNone ActionType = "none" )
Variables ¶
var ( // ErrBadRequest is returned when a required parameter is missing. ErrBadRequest = errors.New("missing argument") )
var ( // ErrStructValidation is returned returned when given struct validation failed ErrStructValidation = errors.New("struct validation") )
Functions ¶
This section is empty.
Types ¶
type APIRequestConstraintsexp ¶ added in v2.2.0
type APIRequestConstraintsexp struct { Action string `json:"action,omitempty"` APIEndpoints []struct { Action string `json:"action"` ID int `json:"id"` } `json:"apiEndpoints,omitempty"` }
APIRequestConstraintsexp is returned as part of GetExportConfigurationResponse.
type APPSEC ¶
type APPSEC interface { Activations AdvancedSettingsEvasivePathMatch AdvancedSettingsLogging AdvancedSettingsPragma AdvancedSettingsPrefetch ApiConstraintsProtection ApiEndpoints ApiHostnameCoverage ApiHostnameCoverageMatchTargets ApiHostnameCoverageOverlapping ApiRequestConstraints AttackGroup BypassNetworkLists Configuration ConfigurationClone ConfigurationVersion ConfigurationVersionClone ContractsGroups CustomDeny CustomRule CustomRuleAction Eval EvalGroup EvalHost EvalPenaltyBox EvalProtectHost EvalRule ExportConfiguration FailoverHostnames IPGeo IPGeoProtection MalwareContentTypes MalwarePolicy MalwarePolicyAction MalwareProtection MatchTarget MatchTargetSequence NetworkLayerProtection PenaltyBox PolicyProtections RatePolicy RatePolicyAction RateProtection ReputationAnalysis ReputationProfile ReputationProfileAction ReputationProtection Rule RuleUpgrade SecurityPolicy SecurityPolicyClone SelectableHostnames SelectedHostname SiemDefinitions SiemSettings SlowPostProtection SlowPostProtectionSetting ThreatIntel TuningRecommendations VersionNotes WAFMode WAFProtection WAPBypassNetworkLists WAPSelectedHostnames }
APPSEC is the appsec api interface
type Activation ¶ added in v2.14.0
type Activation struct { ActivationID int `json:"activationId"` Version int `json:"version"` Status string `json:"status"` Network string `json:"Network"` ActivatedBy string `json:"activatedBy"` ActivationDate time.Time `json:"activationDate"` Notes string `json:"notes"` NotificationEmails []string `json:"notificationEmails"` }
Activation represents the status of a configuration activation.
type ActivationConfigs ¶
type ActivationConfigs struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` }
ActivationConfigs describes a specific configuration version to be activated or deactivated.
type ActivationValue ¶
type ActivationValue string
ActivationValue is used to create an "enum" of possible Activation.ActivationType values
type Activations ¶
type Activations interface { // GetActivations returns the status of an activation. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getactivationid GetActivations(ctx context.Context, params GetActivationsRequest) (*GetActivationsResponse, error) // GetActivationHistory lists the activation history for a configuration. // https://techdocs.akamai.com/application-security/reference/get-activation-history GetActivationHistory(ctx context.Context, params GetActivationHistoryRequest) (*GetActivationHistoryResponse, error) // CreateActivations activates a configuration. If acknowledgeWarnings is true and warnings are // returned on the first attempt, a second attempt is made acknowledging the warnings. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postactivations CreateActivations(ctx context.Context, params CreateActivationsRequest, acknowledgeWarnings bool) (*CreateActivationsResponse, error) // RemoveActivations deactivates a configuration. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postactivations RemoveActivations(ctx context.Context, params RemoveActivationsRequest) (*RemoveActivationsResponse, error) }
The Activations interface supports the activation and deactivation of security configurations.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#activation
type AdvancedExceptions ¶ added in v2.8.1
type AdvancedExceptions AttackGroupAdvancedExceptions
AdvancedExceptions is used to describe advanced exceptions used in Adaptive Security Engine(ASE) rules.
type AdvancedOptionsexp ¶ added in v2.2.0
type AdvancedOptionsexp struct { Logging *Loggingexp `json:"logging"` EvasivePathMatch *EvasivePathMatchexp `json:"evasivePathMatch,omitempty"` Prefetch struct { AllExtensions bool `json:"allExtensions"` EnableAppLayer bool `json:"enableAppLayer"` EnableRateControls bool `json:"enableRateControls"` Extensions []string `json:"extensions,omitempty"` } `json:"prefetch"` PragmaHeader *GetAdvancedSettingsPragmaResponse `json:"pragmaHeader,omitempty"` }
AdvancedOptionsexp is returned as part of GetExportConfigurationResponse.
type AdvancedSettingsCookies ¶ added in v2.2.0
type AdvancedSettingsCookies struct { Type string `json:"type"` Values []string `json:"values,omitempty"` }
AdvancedSettingsCookies contains a list of cookie headers to be logged or not logged depending on the Type field.
type AdvancedSettingsCustomHeaders ¶ added in v2.2.0
type AdvancedSettingsCustomHeaders struct { Type string `json:"type,omitempty"` Values []string `json:"values,omitempty"` }
AdvancedSettingsCustomHeaders contains a list of custom headers to be logged or not logged depending on the Type field.
type AdvancedSettingsEvasivePathMatch ¶ added in v2.9.0
type AdvancedSettingsEvasivePathMatch interface { // GetAdvancedSettingsEvasivePathMatch retrieves the Evasive Path Match setting. // https://techdocs.akamai.com/application-security/reference/get-evasive-path-match-per-config GetAdvancedSettingsEvasivePathMatch(ctx context.Context, params GetAdvancedSettingsEvasivePathMatchRequest) (*GetAdvancedSettingsEvasivePathMatchResponse, error) // UpdateAdvancedSettingsEvasivePathMatch modifies the Evasive Path Match setting. // https://techdocs.akamai.com/application-security/reference/put-evasive-path-match-per-config UpdateAdvancedSettingsEvasivePathMatch(ctx context.Context, params UpdateAdvancedSettingsEvasivePathMatchRequest) (*UpdateAdvancedSettingsEvasivePathMatchResponse, error) // RemoveAdvancedSettingsEvasivePathMatch removes the Evasive Path Match setting. // Deprecated: this method will be removed in a future release. Use UpdateAdvancedSettingsEvasivePathMatch instead. RemoveAdvancedSettingsEvasivePathMatch(ctx context.Context, params RemoveAdvancedSettingsEvasivePathMatchRequest) (*RemoveAdvancedSettingsEvasivePathMatchResponse, error) }
The AdvancedSettingsEvasivePathMatch interface supports retrieving or modifying the Evasive Path Match setting.
type AdvancedSettingsLogging ¶ added in v2.2.0
type AdvancedSettingsLogging interface { // AdvancedSettingsLogging lists the HTTP header logging settings for a configuration or policy. If // the request specifies a policy, then the settings for that policy will be returned, otherwise the // settings for the configuration will be returned. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#gethttpheaderloggingforaconfiguration GetAdvancedSettingsLogging(ctx context.Context, params GetAdvancedSettingsLoggingRequest) (*GetAdvancedSettingsLoggingResponse, error) // UpdateAdvancedSettingsLogging enables, disables, or updates the HTTP header logging settings for a // configuration or policy. If the request specifies a policy, then the settings for that policy will // updated, otherwise the settings for the configuration will be updated. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#puthttpheaderloggingforaconfiguration UpdateAdvancedSettingsLogging(ctx context.Context, params UpdateAdvancedSettingsLoggingRequest) (*UpdateAdvancedSettingsLoggingResponse, error) // RemoveAdvancedSettingsLogging disables HTTP header logging for a confguration or policy. If the request // specifies a policy, then header logging will be disabled for that policy, otherwise logging will be // disabled for the configuration. RemoveAdvancedSettingsLogging(ctx context.Context, params RemoveAdvancedSettingsLoggingRequest) (*RemoveAdvancedSettingsLoggingResponse, error) }
The AdvancedSettingsLogging interface supports retrieving, updating or removing settings related to HTTP header logging.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#headerlog
type AdvancedSettingsPragma ¶ added in v2.5.0
type AdvancedSettingsPragma interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getpragmaheaderconfiguration GetAdvancedSettingsPragma(ctx context.Context, params GetAdvancedSettingsPragmaRequest) (*GetAdvancedSettingsPragmaResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putpragmaheaderconfiguration UpdateAdvancedSettingsPragma(ctx context.Context, params UpdateAdvancedSettingsPragmaRequest) (*UpdateAdvancedSettingsPragmaResponse, error) }
The AdvancedSettingsPragma interface supports retrieving or modifying the pragma header excluded conditions for a configuration or policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#pragmaheader
type AdvancedSettingsPrefetch ¶ added in v2.2.0
type AdvancedSettingsPrefetch interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprefetchrequestsforaconfiguration GetAdvancedSettingsPrefetch(ctx context.Context, params GetAdvancedSettingsPrefetchRequest) (*GetAdvancedSettingsPrefetchResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprefetchrequestsforaconfiguration UpdateAdvancedSettingsPrefetch(ctx context.Context, params UpdateAdvancedSettingsPrefetchRequest) (*UpdateAdvancedSettingsPrefetchResponse, error) }
The AdvancedSettingsPrefetch interface supports retrieving or modifying the prefetch request settings for a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#prefetchrequest
type AdvancedSettingsStandardHeaders ¶ added in v2.2.0
type AdvancedSettingsStandardHeaders struct { Type string `json:"type,omitempty"` Values []string `json:"values,omitempty"` }
AdvancedSettingsStandardHeaders contains a list of standard headers to be logged or not logged depending on the Type field.
type ApiConstraintsProtection ¶ added in v2.16.0
type ApiConstraintsProtection interface { // GetAPIConstraintsProtection retrieves the current API constraints protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getapirequestconstraints GetAPIConstraintsProtection(ctx context.Context, params GetAPIConstraintsProtectionRequest) (*GetAPIConstraintsProtectionResponse, error) // UpdateAPIConstraintsProtection updates the API constraints protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putapirequestconstraints UpdateAPIConstraintsProtection(ctx context.Context, params UpdateAPIConstraintsProtectionRequest) (*UpdateAPIConstraintsProtectionResponse, error) }
The ApiConstraintsProtection interface supports retrieving and updating API request constraints protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type ApiEndpoint ¶ added in v2.2.0
ApiEndpoint describes an API endpoint and its associated action.
type ApiEndpoints ¶ added in v2.2.0
type ApiEndpoints interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getapiendpoints GetApiEndpoints(ctx context.Context, params GetApiEndpointsRequest) (*GetApiEndpointsResponse, error) }
The ApiEndpoints interface supports retrieving the API endpoints associated with a security policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#apiendpoint
type ApiHostnameCoverage ¶ added in v2.2.0
type ApiHostnameCoverage interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#gethostnamecoverage GetApiHostnameCoverage(ctx context.Context, params GetApiHostnameCoverageRequest) (*GetApiHostnameCoverageResponse, error) }
The ApiHostnameCoverage interface supports retrieving hostnames with their current protections, activation statuses, and other summary information.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#hostnamecoverage
type ApiHostnameCoverageMatchTargets ¶ added in v2.2.0
type ApiHostnameCoverageMatchTargets interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#gethostnamecoveragematchtargets GetApiHostnameCoverageMatchTargets(ctx context.Context, params GetApiHostnameCoverageMatchTargetsRequest) (*GetApiHostnameCoverageMatchTargetsResponse, error) }
The ApiHostnameCoverageMatchTargets interface supports retrieving the API and website match targets that protect a hostname.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#hostnamecoverage
type ApiHostnameCoverageOverlapping ¶ added in v2.2.0
type ApiHostnameCoverageOverlapping interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#gethostnamecoverageoverlapping GetApiHostnameCoverageOverlapping(ctx context.Context, params GetApiHostnameCoverageOverlappingRequest) (*GetApiHostnameCoverageOverlappingResponse, error) }
The ApiHostnameCoverageOverlapping interface supports listing the configuration versions that contain a hostname also included in the given configuration version.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#hostnameoverlap
type ApiRequestConstraints ¶ added in v2.2.0
type ApiRequestConstraints interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getapirequestconstraints GetApiRequestConstraints(ctx context.Context, params GetApiRequestConstraintsRequest) (*GetApiRequestConstraintsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putapirequestconstraints // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putactionsperapi UpdateApiRequestConstraints(ctx context.Context, params UpdateApiRequestConstraintsRequest) (*UpdateApiRequestConstraintsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putapirequestconstraints // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putactionsperapi RemoveApiRequestConstraints(ctx context.Context, params RemoveApiRequestConstraintsRequest) (*RemoveApiRequestConstraintsResponse, error) }
The ApiRequestConstraints interface supports retrieving, modifying, or removing the action taken when any API request constraint is triggered, or when a specific API request constraint is triggered.
type AtomicConditionsexp ¶ added in v2.2.0
type AtomicConditionsexp []struct { CheckIps *json.RawMessage `json:"checkIps,omitempty"` ClassName string `json:"className,omitempty"` Index int `json:"index,omitempty"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` Value []string `json:"value,omitempty"` Name *json.RawMessage `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` NameWildcard *json.RawMessage `json:"nameWildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard *json.RawMessage `json:"valueWildcard,omitempty"` Host []string `json:"host,omitempty"` }
AtomicConditionsexp is returned as part of GetExportConfigurationResponse.
type AttackGroup ¶ added in v2.5.0
type AttackGroup interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getattackgroups // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getattackgroupconditionexception GetAttackGroups(ctx context.Context, params GetAttackGroupsRequest) (*GetAttackGroupsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getattackgroup // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getattackgroupconditionexception GetAttackGroup(ctx context.Context, params GetAttackGroupRequest) (*GetAttackGroupResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putattackgroup // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putattackgroupconditionexception UpdateAttackGroup(ctx context.Context, params UpdateAttackGroupRequest) (*UpdateAttackGroupResponse, error) }
The AttackGroup interface supports retrieving and updating attack groups along with their associated actions, conditions, and exceptions.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#attackgroup
type AttackGroupAdvancedCriteria ¶ added in v2.5.0
type AttackGroupAdvancedCriteria []struct { Hostnames []string `json:"hostnames,omitempty"` Names []string `json:"names,omitempty"` Paths []string `json:"paths,omitempty"` Values []string `json:"values,omitempty"` }
AttackGroupAdvancedCriteria describes the hostname and path criteria used to limit the scope of an exception.
type AttackGroupAdvancedExceptions ¶ added in v2.2.0
type AttackGroupAdvancedExceptions struct { ConditionOperator string `json:"conditionOperator,omitempty"` Conditions *AttackGroupConditions `json:"conditions,omitempty"` HeaderCookieOrParamValues *AttackGroupHeaderCookieOrParamValuesAdvanced `json:"headerCookieOrParamValues,omitempty"` SpecificHeaderCookieOrParamNameValue *AttackGroupSpecificHeaderCookieOrParamNameValAdvanced `json:"specificHeaderCookieOrParamNameValue,omitempty"` SpecificHeaderCookieParamXMLOrJSONNames *AttackGroupSpecificHeaderCookieParamXMLOrJSONNamesAdvanced `json:"specificHeaderCookieParamXmlOrJsonNames,omitempty"` }
AttackGroupAdvancedExceptions describes an attack group's advanced exception information.
type AttackGroupConditionException ¶ added in v2.0.4
type AttackGroupConditionException struct { AdvancedExceptionsList *AttackGroupAdvancedExceptions `json:"advancedExceptions,omitempty"` Exception *AttackGroupException `json:"exception,omitempty"` }
AttackGroupConditionException describes an attack group's condition and exception information.
type AttackGroupConditions ¶ added in v2.2.0
type AttackGroupConditions []struct { Type string `json:"type,omitempty"` Extensions []string `json:"extensions,omitempty"` Filenames []string `json:"filenames,omitempty"` Hosts []string `json:"hosts,omitempty"` Ips []string `json:"ips,omitempty"` Methods []string `json:"methods,omitempty"` Paths []string `json:"paths,omitempty"` Header string `json:"header,omitempty"` CaseSensitive bool `json:"caseSensitive,omitempty"` Name string `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` PositiveMatch bool `json:"positiveMatch"` Value string `json:"value,omitempty"` Wildcard bool `json:"wildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard bool `json:"valueWildcard,omitempty"` UseHeaders bool `json:"useHeaders,omitempty"` }
AttackGroupConditions describes an attack group's condition information.
type AttackGroupException ¶ added in v2.2.0
type AttackGroupException struct {
SpecificHeaderCookieParamXMLOrJSONNames *AttackGroupSpecificHeaderCookieParamXMLOrJSONNames `json:"specificHeaderCookieParamXmlOrJsonNames,omitempty"`
}
AttackGroupException is used to describe an exception that can be used to conditionally exclude requests from inspection.
type AttackGroupHeaderCookieOrParamValuesAdvanced ¶ added in v2.5.0
type AttackGroupHeaderCookieOrParamValuesAdvanced []struct { Criteria *AttackGroupAdvancedCriteria `json:"criteria,omitempty"` ValueWildcard bool `json:"valueWildcard"` Values []string `json:"values,omitempty"` }
AttackGroupHeaderCookieOrParamValuesAdvanced describes the list of excepted values in headers, cookies, or query parameters.
type AttackGroupRecommendation ¶ added in v2.8.1
type AttackGroupRecommendation struct { Description string `json:"description,omitempty"` Evidence *Evidences `json:"evidences,omitempty"` Exception *AttackGroupException `json:"exception,omitempty"` Group string `json:"group,omitempty"` }
AttackGroupRecommendation is used to describe a recommendation for an attack group.
type AttackGroupSpecificHeaderCookieOrParamNameValAdvanced ¶ added in v2.5.0
type AttackGroupSpecificHeaderCookieOrParamNameValAdvanced []struct { Criteria *AttackGroupAdvancedCriteria `json:"criteria,omitempty"` NamesValues []struct { Names []string `json:"names"` Values []string `json:"values"` } `json:"namesValues"` Selector string `json:"selector"` ValueWildcard bool `json:"valueWildcard"` Wildcard bool `json:"wildcard"` }
AttackGroupSpecificHeaderCookieOrParamNameValAdvanced describes the excepted name-value pairs in a request.
type AttackGroupSpecificHeaderCookieParamXMLOrJSONNames ¶ added in v2.2.0
type AttackGroupSpecificHeaderCookieParamXMLOrJSONNames []struct { Names []string `json:"names,omitempty"` Selector string `json:"selector,omitempty"` Wildcard bool `json:"wildcard,omitempty"` }
AttackGroupSpecificHeaderCookieParamXMLOrJSONNames describes the advanced exception members that can be used to conditionally exclude requests from inspection.
type AttackGroupSpecificHeaderCookieParamXMLOrJSONNamesAdvanced ¶ added in v2.5.0
type AttackGroupSpecificHeaderCookieParamXMLOrJSONNamesAdvanced []struct { Criteria *AttackGroupAdvancedCriteria `json:"criteria,omitempty"` Names []string `json:"names,omitempty"` Selector string `json:"selector,omitempty"` Wildcard bool `json:"wildcard,omitempty"` }
AttackGroupSpecificHeaderCookieParamXMLOrJSONNamesAdvanced describes the advanced exception members that allow you to conditionally exclude requests from inspection.
type AutoGenerated ¶ added in v2.2.0
type AutoGenerated struct { Type string `json:"type"` Apis []struct { ID int `json:"id"` Name string `json:"name"` } `json:"apis"` BypassNetworkLists []struct { ID string `json:"id"` Name string `json:"name"` } `json:"bypassNetworkLists"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"-"` TargetID int `json:"targetId"` }
AutoGenerated is currently unused.
type BypassNetworkList ¶
BypassNetworkList describes a network list used in the bypass network lists for the specified configuration.
type BypassNetworkLists ¶ added in v2.2.0
type BypassNetworkLists interface { // Deprecated: this method will be removed in a future release. Use the GetWAPBypassNetworkLists method of the WAPBypassNetworkLists interface instead. // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getbypassnetworklistsforawapconfigversion GetBypassNetworkLists(ctx context.Context, params GetBypassNetworkListsRequest) (*GetBypassNetworkListsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putbypassnetworklistsforawapconfigversion // Deprecated: this method will be removed in a future release. Use the UpdateWAPBypassNetworkLists method of the WAPBypassNetworkLists interface instead. UpdateBypassNetworkLists(ctx context.Context, params UpdateBypassNetworkListsRequest) (*UpdateBypassNetworkListsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putbypassnetworklistsforawapconfigversion // Deprecated: this method will be removed in a future release. Use the UpdateWAPBypassNetworkLists method of the WAPBypassNetworkLists interface instead. RemoveBypassNetworkLists(ctx context.Context, params RemoveBypassNetworkListsRequest) (*RemoveBypassNetworkListsResponse, error) }
The BypassNetworkLists interface supports listing or modifying which network lists are used in the bypass network lists settings. Deprecated: this interface will be removed in a future release. Use the WAPBypassNetworkLists interface instead.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#bypassnetworklist
type ClientFunc ¶
ClientFunc is a appsec client new method, this can used for mocking
type ClientReputationReputationProfileActions ¶ added in v2.3.0
type ClientReputationReputationProfileActions []struct { Action string `json:"action"` ID int `json:"id"` }
ClientReputationReputationProfileActions is returned as part of GetExportConfigurationResponse.
type ConditionReputationProfile ¶ added in v2.2.0
type ConditionReputationProfile struct { AtomicConditions *AtomicConditionsexp `json:"atomicConditions,omitempty"` CanDelete bool `json:"-"` ConfigVersionID int `json:"-"` ID int `json:"-"` Name string `json:"-"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` UUID string `json:"-"` Version int64 `json:"-"` }
ConditionReputationProfile is returned as part of GetExportConfigurationResponse.
type ConditionsExp ¶ added in v2.2.0
type ConditionsExp []struct { Type string `json:"type"` PositiveMatch bool `json:"positiveMatch"` Name *json.RawMessage `json:"name,omitempty"` NameCase *json.RawMessage `json:"nameCase,omitempty"` NameWildcard *json.RawMessage `json:"nameWildcard,omitempty"` Value *json.RawMessage `json:"value,omitempty"` ValueCase *json.RawMessage `json:"valueCase,omitempty"` ValueWildcard *json.RawMessage `json:"valueWildcard,omitempty"` }
ConditionsExp is returned as part of GetExportConfigurationResponse.
type ConditionsValue ¶ added in v2.2.0
type ConditionsValue []string
ConditionsValue is a slice of strings that describe conditions.
func (*ConditionsValue) UnmarshalJSON ¶ added in v2.2.0
func (c *ConditionsValue) UnmarshalJSON(data []byte) error
UnmarshalJSON reads a ConditionsValue struct from its data argument.
type Configuration ¶
type Configuration interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getconfigurations GetConfigurations(ctx context.Context, params GetConfigurationsRequest) (*GetConfigurationsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getconfigurations GetConfiguration(ctx context.Context, params GetConfigurationRequest) (*GetConfigurationResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postconfigurations CreateConfiguration(ctx context.Context, params CreateConfigurationRequest) (*CreateConfigurationResponse, error) UpdateConfiguration(ctx context.Context, params UpdateConfigurationRequest) (*UpdateConfigurationResponse, error) RemoveConfiguration(ctx context.Context, params RemoveConfigurationRequest) (*RemoveConfigurationResponse, error) }
The Configuration interface supports creating, retrieving, updating and deleting security configurations.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#configuration
type ConfigurationClone ¶
type ConfigurationClone interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getconfigurationversion GetConfigurationClone(ctx context.Context, params GetConfigurationCloneRequest) (*GetConfigurationCloneResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postsummarylistofconfigurationversions CreateConfigurationClone(ctx context.Context, params CreateConfigurationCloneRequest) (*CreateConfigurationCloneResponse, error) }
The ConfigurationClone interface supports cloning an existing configuration and retrieving a configuration version.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#configurationclone
type ConfigurationHostnameCoverage ¶ added in v2.2.0
type ConfigurationHostnameCoverage struct { ID int `json:"id,omitempty"` Name string `json:"name,omitempty"` Version int `json:"version,omitempty"` }
ConfigurationHostnameCoverage describes a specific configuration version.
type ConfigurationVersion ¶
type ConfigurationVersion interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsummarylistofconfigurationversions GetConfigurationVersions(ctx context.Context, params GetConfigurationVersionsRequest) (*GetConfigurationVersionsResponse, error) }
The ConfigurationVersion interface supports retrieving the versions of a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#configuration
type ConfigurationVersionClone ¶ added in v2.2.0
type ConfigurationVersionClone interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getconfigurationversion GetConfigurationVersionClone(ctx context.Context, params GetConfigurationVersionCloneRequest) (*GetConfigurationVersionCloneResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postsummarylistofconfigurationversions CreateConfigurationVersionClone(ctx context.Context, params CreateConfigurationVersionCloneRequest) (*CreateConfigurationVersionCloneResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deleteconfigurationversion RemoveConfigurationVersionClone(ctx context.Context, params RemoveConfigurationVersionCloneRequest) (*RemoveConfigurationVersionCloneResponse, error) }
The ConfigurationVersionClone interface supports creating, retrieving, and removing clones of a configuration version.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#configurationclone
type ContractsGroups ¶ added in v2.2.0
type ContractsGroups interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcontractsandgroupswithksdorwaf GetContractsGroups(ctx context.Context, params GetContractsGroupsRequest) (*GetContractsGroupsResponse, error) }
The ContractsGroups interface supports listing the contracts and groups for the current account. Each object contains the contract, groups associated with the contract, and whether Kona Site Defender or Web Application Protector is the product for that contract.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#contractgroup
type CreateActivationsRequest ¶
type CreateActivationsRequest struct { Action string `json:"action"` Network string `json:"network"` Note string `json:"note"` NotificationEmails []string `json:"notificationEmails"` ActivationConfigs []struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` } `json:"activationConfigs"` }
CreateActivationsRequest is used to request activation or deactivation of a configuration.
type CreateActivationsResponse ¶
type CreateActivationsResponse struct { DispatchCount int `json:"dispatchCount"` ActivationID int `json:"activationId"` Action string `json:"action"` Status StatusValue `json:"status"` Network NetworkValue `json:"network"` Estimate string `json:"estimate"` CreatedBy string `json:"createdBy"` CreateDate time.Time `json:"createDate"` ActivationConfigs []struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` ConfigVersion int `json:"configVersion"` PreviousConfigVersion int `json:"previousConfigVersion"` } `json:"activationConfigs"` }
CreateActivationsResponse is returned from a call to CreateActivations.
type CreateConfigurationCloneRequest ¶
type CreateConfigurationCloneRequest struct { Name string `json:"name"` Description string `json:"description"` ContractID string `json:"contractId"` GroupID int `json:"groupId"` Hostnames []string `json:"hostnames"` CreateFrom struct { ConfigID int `json:"configId"` Version int `json:"version"` } `json:"createFrom"` }
CreateConfigurationCloneRequest is used to clone an existing security configuration.
func (CreateConfigurationCloneRequest) Validate ¶
func (v CreateConfigurationCloneRequest) Validate() error
Validate validates a CreateConfigurationCloneRequest.
type CreateConfigurationCloneResponse ¶
type CreateConfigurationCloneResponse struct { ConfigID int `json:"configId"` Version int `json:"version"` Description string `json:"description"` Name string `json:"name"` }
CreateConfigurationCloneResponse is returned from a call to CreateConfigurationClone.
type CreateConfigurationRequest ¶ added in v2.2.0
type CreateConfigurationRequest struct { Name string `json:"name"` Description string `json:"description"` ContractID string `json:"contractId"` GroupID int `json:"groupId"` Hostnames []string `json:"hostnames"` }
CreateConfigurationRequest is used to create a new WAP or KSD security configuration.
type CreateConfigurationResponse ¶ added in v2.2.0
type CreateConfigurationResponse struct { ConfigID int `json:"configId"` Version int `json:"version"` Description string `json:"description"` Name string `json:"name"` }
CreateConfigurationResponse is returned from a call to CreateConfiguration.
type CreateConfigurationVersionCloneRequest ¶ added in v2.2.0
type CreateConfigurationVersionCloneRequest struct { ConfigID int `json:"-"` CreateFromVersion int `json:"createFromVersion"` RuleUpdate bool `json:"ruleUpdate"` }
CreateConfigurationVersionCloneRequest is used to clone an existing configuration version.
func (CreateConfigurationVersionCloneRequest) Validate ¶ added in v2.2.0
func (v CreateConfigurationVersionCloneRequest) Validate() error
Validate validates a CreateConfigurationCloneRequest.
type CreateConfigurationVersionCloneResponse ¶ added in v2.2.0
type CreateConfigurationVersionCloneResponse struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` VersionNotes string `json:"versionNotes"` CreateDate time.Time `json:"createDate"` CreatedBy string `json:"createdBy"` BasedOn int `json:"basedOn"` Production struct { Status string `json:"status"` Time time.Time `json:"time"` } `json:"production"` Staging struct { Status string `json:"status"` } `json:"staging"` }
CreateConfigurationVersionCloneResponse is returned from a call to CreateConfigurationVersionClone.
type CreateCustomDenyRequest ¶ added in v2.2.0
type CreateCustomDenyRequest struct { ConfigID int `json:"-"` Version int `json:"-"` JsonPayloadRaw json.RawMessage `json:"-"` }
CreateCustomDenyRequest is used to create a new custom deny action for a specific configuration.
func (CreateCustomDenyRequest) Validate ¶ added in v2.2.0
func (v CreateCustomDenyRequest) Validate() error
Validate validates a CreateCustomDenyRequest.
type CreateCustomDenyResponse ¶ added in v2.2.0
type CreateCustomDenyResponse struct { Description string `json:"description,omitempty"` Name string `json:"name"` ID customDenyID `json:"id"` Parameters []struct { DisplayName string `json:"-"` Name string `json:"name"` Value string `json:"value"` } `json:"parameters"` }
CreateCustomDenyResponse is returned from a call to CreateCustomDeny.
type CreateCustomRuleRequest ¶
type CreateCustomRuleRequest struct { ConfigID int `json:"configid,omitempty"` Version int `json:"version,omitempty"` JsonPayloadRaw json.RawMessage `json:"-"` }
CreateCustomRuleRequest is used to create a custom rule.
func (CreateCustomRuleRequest) Validate ¶
func (v CreateCustomRuleRequest) Validate() error
Validate validates a CreateCustomRuleRequest.
type CreateCustomRuleResponse ¶
type CreateCustomRuleResponse struct { ID int `json:"id,omitempty"` Name string `json:"name"` Description string `json:"description,omitempty"` Version int `json:"-"` RuleActivated bool `json:"-"` Structured bool `json:"-"` Tag []string `json:"tag"` Conditions []struct { Name *json.RawMessage `json:"name,omitempty"` NameCase *bool `json:"nameCase,omitempty"` NameWildcard *bool `json:"nameWildcard,omitempty"` PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Value *json.RawMessage `json:"value,omitempty"` ValueCase *bool `json:"valueCase,omitempty"` ValueExactMatch *bool `json:"valueExactMatch,omitempty"` ValueIgnoreSegment *bool `json:"valueIgnoreSegment,omitempty"` ValueNormalize *bool `json:"valueNormalize,omitempty"` ValueRecursive *bool `json:"valueRecursive,omitempty"` ValueWildcard *bool `json:"valueWildcard,omitempty"` UseXForwardForHeaders *bool `json:"useXForwardForHeaders,omitempty"` } `json:"conditions"` EffectiveTimePeriod *CustomRuleEffectivePeriod `json:"effectiveTimePeriod,omitempty"` SamplingRate int `json:"samplingRate,omitempty"` LoggingOptions *json.RawMessage `json:"loggingOptions,omitempty"` Operation string `json:"operation,omitempty"` }
CreateCustomRuleResponse is returned from a call to CreateCustomRule.
type CreateMalwarePolicyRequest ¶ added in v2.16.0
type CreateMalwarePolicyRequest struct { ConfigID int ConfigVersion int Policy *MalwarePolicyBody }
CreateMalwarePolicyRequest is used to create a malware policy.
func (CreateMalwarePolicyRequest) Validate ¶ added in v2.16.0
func (v CreateMalwarePolicyRequest) Validate() error
Validate validates a CreateMalwarePolicyRequest.
type CreateMatchTargetRequest ¶
type CreateMatchTargetRequest struct { Type string `json:"type"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` JsonPayloadRaw json.RawMessage `json:"-"` }
CreateMatchTargetRequest is used to create a match target.
func (CreateMatchTargetRequest) Validate ¶
func (v CreateMatchTargetRequest) Validate() error
Validate validates a CreateMatchTargetRequest.
type CreateMatchTargetResponse ¶
type CreateMatchTargetResponse struct { MType string `json:"type"` Apis []struct { ID int `json:"id"` Name string `json:"name"` } `json:"apis,omitempty"` DefaultFile string `json:"defaultFile"` Hostnames []string `json:"hostnames"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch *json.RawMessage `json:"isNegativePathMatch,omitempty"` FilePaths []string `json:"filePaths"` FileExtensions []string `json:"fileExtensions"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"-"` TargetID int `json:"targetId"` BypassNetworkLists []struct { Name string `json:"name"` ID string `json:"id"` } `json:"bypassNetworkLists"` }
CreateMatchTargetResponse is returned from a call to CreateMatchTarget.
type CreateRatePolicyRequest ¶
type CreateRatePolicyRequest struct { ID int `json:"-"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` JsonPayloadRaw json.RawMessage `json:"-"` }
CreateRatePolicyRequest is used to create a rate policy.
func (CreateRatePolicyRequest) Validate ¶
func (v CreateRatePolicyRequest) Validate() error
Validate validates a CreateRatePolicyRequest.
type CreateRatePolicyResponse ¶
type CreateRatePolicyResponse struct { ID int `json:"id"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` MatchType string `json:"matchType"` Type string `json:"type"` Name string `json:"name"` Description string `json:"description"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"path"` PathMatchType string `json:"pathMatchType"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"fileExtensions"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames"` AdditionalMatchOptions []RatePolicyMatchOption `json:"additionalMatchOptions,omitempty"` QueryParameters []struct { Name string `json:"name"` Values []string `json:"values"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` } `json:"queryParameters"` CreateDate string `json:"-"` UpdateDate string `json:"-"` Used json.RawMessage `json:"used"` }
CreateRatePolicyResponse is returned from a call to CreateRatePolicy.
type CreateReputationProfileRequest ¶ added in v2.0.4
type CreateReputationProfileRequest struct { ConfigID int `json:"-"` ConfigVersion int `json:"-"` JsonPayloadRaw json.RawMessage `json:"-"` }
CreateReputationProfileRequest is used to create a reputation profile.
func (CreateReputationProfileRequest) Validate ¶ added in v2.0.4
func (v CreateReputationProfileRequest) Validate() error
Validate validates a CreateReputationProfileRequest.
type CreateReputationProfileResponse ¶ added in v2.0.4
type CreateReputationProfileResponse struct { ID int `json:"id"` Name string `json:"name"` Context string `json:"context"` Description string `json:"description"` Threshold int `json:"threshold"` Condition struct { AtomicConditions []struct { CheckIps string `json:"checkIps,omitempty"` ClassName string `json:"className"` Index int `json:"index"` PositiveMatch bool `json:"positiveMatch"` Value []string `json:"value,omitempty"` Name atomicConditionsName `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` NameWildcard bool `json:"nameWildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard bool `json:"valueWildcard,omitempty"` Host []string `json:"host,omitempty"` } `json:"atomicConditions"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` } `json:"condition"` Enabled bool `json:"enabled"` }
CreateReputationProfileResponse is returned from a call to CreateReputationProfile.
type CreateSecurityPolicyClonePost ¶
type CreateSecurityPolicyClonePost struct { CreateFromSecurityPolicy string `json:"createFromSecurityPolicy"` PolicyName string `json:"policyName"` PolicyPrefix string `json:"policyPrefix"` }
CreateSecurityPolicyClonePost is currently unused.
type CreateSecurityPolicyClonePostResponse ¶
type CreateSecurityPolicyClonePostResponse struct { ConfigID int `json:"configId"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } `json:"policySecurityControls"` Version int `json:"version"` }
CreateSecurityPolicyClonePostResponse is currently unused.
type CreateSecurityPolicyCloneRequest ¶
type CreateSecurityPolicyCloneRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` CreateFromSecurityPolicy string `json:"createFromSecurityPolicy"` PolicyName string `json:"policyName"` PolicyPrefix string `json:"policyPrefix"` }
CreateSecurityPolicyCloneRequest is used to clone a security policy.
func (CreateSecurityPolicyCloneRequest) Validate ¶
func (v CreateSecurityPolicyCloneRequest) Validate() error
Validate validates a CreateSecurityPolicyCloneRequest.
type CreateSecurityPolicyCloneResponse ¶
type CreateSecurityPolicyCloneResponse struct { HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } }
CreateSecurityPolicyCloneResponse is returned from a call to CreateSecurityPolicyClone.
type CreateSecurityPolicyRequest ¶ added in v2.0.4
type CreateSecurityPolicyRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` PolicyName string `json:"policyName"` PolicyPrefix string `json:"policyPrefix"` DefaultSettings bool `json:"defaultSettings"` }
CreateSecurityPolicyRequest is used to create a ecurity policy.
func (CreateSecurityPolicyRequest) Validate ¶ added in v2.0.4
func (v CreateSecurityPolicyRequest) Validate() error
Validate validates a CreateSecurityPolicyRequest.
type CreateSecurityPolicyResponse ¶ added in v2.0.4
type CreateSecurityPolicyResponse struct { ConfigID int `json:"configId"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` DefaultSettings bool `json:"defaultSettings,omitempty"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } `json:"policySecurityControls"` Version int `json:"version"` }
CreateSecurityPolicyResponse is returned from a call to CreateSecurityPolicy.
type CustomDeny ¶ added in v2.2.0
type CustomDeny interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcustomdeny GetCustomDenyList(ctx context.Context, params GetCustomDenyListRequest) (*GetCustomDenyListResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcustomdenyaction GetCustomDeny(ctx context.Context, params GetCustomDenyRequest) (*GetCustomDenyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postcustomdeny CreateCustomDeny(ctx context.Context, params CreateCustomDenyRequest) (*CreateCustomDenyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putcustomdenyaction UpdateCustomDeny(ctx context.Context, params UpdateCustomDenyRequest) (*UpdateCustomDenyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deletecustomdenyaction RemoveCustomDeny(ctx context.Context, params RemoveCustomDenyRequest) (*RemoveCustomDenyResponse, error) }
The CustomDeny interface supports creating, retrievinfg, modifying and removing custom deny actions for a configuration. https://developer.akamai.com/api/cloud_security/application_security/v1.html#customdeny
type CustomDenyListexp ¶ added in v2.2.0
type CustomDenyListexp []struct { Description string `json:"description,omitempty"` Name string `json:"name"` ID string `json:"id"` Parameters []struct { DisplayName string `json:"-"` Name string `json:"name"` Value string `json:"value"` } `json:"parameters"` }
CustomDenyListexp is returned as part of GetExportConfigurationResponse.
type CustomRule ¶
type CustomRule interface { //https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcustomrules GetCustomRules(ctx context.Context, params GetCustomRulesRequest) (*GetCustomRulesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getruleid GetCustomRule(ctx context.Context, params GetCustomRuleRequest) (*GetCustomRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postcustomrules CreateCustomRule(ctx context.Context, params CreateCustomRuleRequest) (*CreateCustomRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putruleid UpdateCustomRule(ctx context.Context, params UpdateCustomRuleRequest) (*UpdateCustomRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deleteruleid RemoveCustomRule(ctx context.Context, params RemoveCustomRuleRequest) (*RemoveCustomRuleResponse, error) }
The CustomRule interface supports creating, retrievinfg, modifying and removing custom rules for a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#customrule
type CustomRuleAction ¶
type CustomRuleAction interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcustomruleactions GetCustomRuleActions(ctx context.Context, params GetCustomRuleActionsRequest) (*GetCustomRuleActionsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getcustomruleactions GetCustomRuleAction(ctx context.Context, params GetCustomRuleActionRequest) (*GetCustomRuleActionResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putactionruleid UpdateCustomRuleAction(ctx context.Context, params UpdateCustomRuleActionRequest) (*UpdateCustomRuleActionResponse, error) }
The CustomRuleAction interface supports retrieving and updating the actions for the custom rules of a configuration, or for a specific custom rule.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#customruleactions
type CustomRuleActionsexp ¶ added in v2.2.0
CustomRuleActionsexp is returned as part of GetExportConfigurationResponse.
type CustomRuleConditionsName ¶ added in v2.2.0
type CustomRuleConditionsName []string
CustomRuleConditionsName is a slice of strings used to indicate condition names in custom rule conditions.
func (*CustomRuleConditionsName) UnmarshalJSON ¶ added in v2.2.0
func (c *CustomRuleConditionsName) UnmarshalJSON(data []byte) error
UnmarshalJSON reads a CustomRuleConditionsName from its data argument.
type CustomRuleConditionsValue ¶ added in v2.2.0
type CustomRuleConditionsValue []string
CustomRuleConditionsValue is a slice of strings used to indicate condition values in custom rule conditions.
func (*CustomRuleConditionsValue) UnmarshalJSON ¶ added in v2.2.0
func (c *CustomRuleConditionsValue) UnmarshalJSON(data []byte) error
UnmarshalJSON reads a CustomRuleConditionsValue from its data argument.
type CustomRuleEffectivePeriod ¶ added in v2.14.0
type CustomRuleEffectivePeriod struct { EndDate string `json:"endDate"` StartDate string `json:"startDate"` Status string `json:"-"` }
CustomRuleEffectivePeriod defines the period during which a custom rule is active as well as its current status.
type CustomRuleResponse ¶
type CustomRuleResponse struct { ID int `json:"-"` Name string `json:"name"` Description string `json:"description,omitempty"` Version int `json:"-"` RuleActivated bool `json:"-"` Structured bool `json:"-"` Tag []string `json:"tag"` Conditions []struct { Name *json.RawMessage `json:"name,omitempty"` NameCase *bool `json:"nameCase,omitempty"` NameWildcard *bool `json:"nameWildcard,omitempty"` PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Value *json.RawMessage `json:"value,omitempty"` ValueCase *bool `json:"valueCase,omitempty"` ValueExactMatch *bool `json:"valueExactMatch,omitempty"` ValueIgnoreSegment *bool `json:"valueIgnoreSegment,omitempty"` ValueNormalize *bool `json:"valueNormalize,omitempty"` ValueRecursive *bool `json:"valueRecursive,omitempty"` ValueWildcard *bool `json:"valueWildcard,omitempty"` UseXForwardForHeaders *bool `json:"useXForwardForHeaders,omitempty"` } `json:"conditions"` EffectiveTimePeriod *CustomRuleEffectivePeriod `json:"effectiveTimePeriod,omitempty"` SamplingRate int `json:"samplingRate,omitempty"` LoggingOptions *json.RawMessage `json:"loggingOptions,omitempty"` Operation string `json:"operation,omitempty"` }
CustomRuleResponse is returned from calls to GetCustomRule, UpdateCustomRule, and DeleteCustomRule.
type DurationThresholdExp ¶ added in v2.5.0
type DurationThresholdExp struct {
Timeout int `json:"timeout"`
}
DurationThresholdExp is returned as part of GetExportConfigurationResponse.
type Error ¶
type Error struct { Type string `json:"type"` Title string `json:"title"` Detail string `json:"detail"` Instance string `json:"instance,omitempty"` BehaviorName string `json:"behaviorName,omitempty"` ErrorLocation string `json:"errorLocation,omitempty"` StatusCode int `json:"-"` }
Error is an appsec error interface.
type Eval ¶ added in v2.0.4
type Eval interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmode // Deprecated: this method will be removed in a future release. Use GetEval instead. GetEvals(ctx context.Context, params GetEvalsRequest) (*GetEvalsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmode GetEval(ctx context.Context, params GetEvalRequest) (*GetEvalResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postevaluationmode UpdateEval(ctx context.Context, params UpdateEvalRequest) (*UpdateEvalResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postevaluationmode RemoveEval(ctx context.Context, params RemoveEvalRequest) (*RemoveEvalResponse, error) }
The Eval interface supports retrieving and updating the way evaluation rules would respond if they were applied to live traffic.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#evalmode
type EvalGroup ¶ added in v2.6.0
type EvalGroup interface { // GetEvalGroups retrieves all attack groups currently under evaluation. GetEvalGroups(ctx context.Context, params GetAttackGroupsRequest) (*GetAttackGroupsResponse, error) // GetEvalGroups retrieves a specific attack group currently under evaluation. GetEvalGroup(ctx context.Context, params GetAttackGroupRequest) (*GetAttackGroupResponse, error) // UpdateEvalGroup supports updating the condition and exception information for an attack group under evaluation. UpdateEvalGroup(ctx context.Context, params UpdateAttackGroupRequest) (*UpdateAttackGroupResponse, error) }
The EvalGroup interface supports creating, modifying and retrieving attack groups for evaluation.
type EvalHost ¶ added in v2.2.0
type EvalHost interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevaluationhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetEvalHosts(ctx context.Context, params GetEvalHostsRequest) (*GetEvalHostsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevaluationhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetEvalHost(ctx context.Context, params GetEvalHostRequest) (*GetEvalHostResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putevaluationhostnames // Deprecated: this method will be removed in a future release. Use the UpdateWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. UpdateEvalHost(ctx context.Context, params UpdateEvalHostRequest) (*UpdateEvalHostResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putevaluationhostnames // Deprecated: this method will be removed in a future release. Use the WAPSelectedHostnames method of the WAPSelectedHostnames interface instead. RemoveEvalHost(ctx context.Context, params RemoveEvalHostRequest) (*RemoveEvalHostResponse, error) }
The EvalHost interface supports retrieving and modifying list of evaluation hostnames for a configuration. Deprecated: this interface will be removed in a future release. Use the WAPSelectedHostnames interface instead.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#evalhostname
type EvalPenaltyBox ¶ added in v2.14.0
type EvalPenaltyBox interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getpenaltybox GetEvalPenaltyBox(ctx context.Context, params GetPenaltyBoxRequest) (*GetPenaltyBoxResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putpenaltybox UpdateEvalPenaltyBox(ctx context.Context, params UpdatePenaltyBoxRequest) (*UpdatePenaltyBoxResponse, error) }
The EvalPenaltyBox interface supports retrieving or modifying the evaluation penalty box settings for a specified security policy in evaluation mode.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#evalpenaltybox
type EvalProtectHost ¶ added in v2.2.0
type EvalProtectHost interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevaluationhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetEvalProtectHosts(ctx context.Context, params GetEvalProtectHostsRequest) (*GetEvalProtectHostsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevaluationhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetEvalProtectHost(ctx context.Context, params GetEvalProtectHostRequest) (*GetEvalProtectHostResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putmoveevaluationhostnamestoprotection // Deprecated: this method will be removed in a future release. Use the UpdateWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. UpdateEvalProtectHost(ctx context.Context, params UpdateEvalProtectHostRequest) (*UpdateEvalProtectHostResponse, error) }
The EvalProtectHost interface supports retrieving the evaluation hostnames for a configuration and moving hostnames from evaluating to protected status. Deprecated: this interface will be removed in a future release. Use the WAPSelectedHostnames interface instead.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#evalhostname
type EvalRule ¶ added in v2.5.0
type EvalRule interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevalrules GetEvalRules(ctx context.Context, params GetEvalRulesRequest) (*GetEvalRulesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getevalrule GetEvalRule(ctx context.Context, params GetEvalRuleRequest) (*GetEvalRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putevalrule UpdateEvalRule(ctx context.Context, params UpdateEvalRuleRequest) (*UpdateEvalRuleResponse, error) }
The EvalRule interface supports retrieving and modifying the rules available for evaluation and their actions, or the action of a specific rule.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#evalrule
type EvaluatingSecurityPolicy ¶ added in v2.16.0
type EvaluatingSecurityPolicy struct { EffectiveSecurityControls struct { ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` } Hostnames []string `json:"hostnames,omitempty"` SecurityPolicyID string `json:"id"` }
EvaluatingSecurityPolicy is returned from a call to GetExportConfiguration.
type Evaluationexp ¶ added in v2.2.0
type Evaluationexp struct { AttackGroupActions []struct { Action string `json:"action"` Group string `json:"group"` } `json:"attackGroupActions"` EvaluationID int `json:"evaluationId"` EvaluationVersion int `json:"evaluationVersion"` RuleActions []struct { Action string `json:"action"` ID int `json:"id"` Conditions *RuleConditions `json:"conditions,omitempty"` Exception *RuleException `json:"exception,omitempty"` } `json:"ruleActions"` RulesetVersionID int `json:"rulesetVersionId"` }
Evaluationexp is returned as part of GetExportConfigurationResponse.
type EvasivePathMatchexp ¶ added in v2.9.0
type EvasivePathMatchexp struct {
EnablePathMatch bool `json:"enabled"`
}
EvasivePathMatchexp contains the EnablePathMatch setting
type Evidences ¶ added in v2.8.1
type Evidences []struct { HostEvidences []string `json:"hostEvidences,omitempty"` PathEvidences []string `json:"pathEvidences,omitempty"` UserDataEvidences []string `json:"userDataEvidences,omitempty"` }
Evidences is used to describe evidences for a recommendation.
type ExcludeCondition ¶ added in v2.5.0
type ExcludeCondition struct { Type string `json:"type"` PositiveMatch bool `json:"positiveMatch"` Header string `json:"header"` Value []string `json:"value"` Name string `json:"name"` ValueCase bool `json:"valueCase"` ValueWildcard bool `json:"valueWildcard"` UseHeaders bool `json:"useHeaders"` }
ExcludeCondition describes the pragma header's excluded conditions.
type ExportConfiguration ¶
type ExportConfiguration interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getconfigurationversionexport // Deprecated: this method will be removed in a future release. Use GetExportConfiguration instead. GetExportConfigurations(ctx context.Context, params GetExportConfigurationsRequest) (*GetExportConfigurationsResponse, error) GetExportConfiguration(ctx context.Context, params GetExportConfigurationRequest) (*GetExportConfigurationResponse, error) }
The ExportConfiguration interface supports exporting comprehensive details about a security configuration version. This operation returns more data than Get configuration version details, including rate and security policies, rules, hostnames, and numerous additional settings.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#export
type FailoverHostnames ¶ added in v2.2.0
type FailoverHostnames interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getfailoverhostnames GetFailoverHostnames(ctx context.Context, params GetFailoverHostnamesRequest) (*GetFailoverHostnamesResponse, error) }
The FailoverHostnames interface supports retrieving the failover hostnames in a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#failoverhostname
type GeoControlsList ¶ added in v2.12.0
type GeoControlsList struct {
BlockedIPNetworkLists IPNetworkListsList `json:"networkList"`
}
GeoControlsList is used to define a list of blocked IP network lists.
type GetAPIConstraintsProtectionRequest ¶ added in v2.5.0
type GetAPIConstraintsProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyAPIConstraints bool `json:"applyApiConstraints"` }
GetAPIConstraintsProtectionRequest is used to retrieve the API constraints protection setting.
func (GetAPIConstraintsProtectionRequest) Validate ¶ added in v2.5.0
func (v GetAPIConstraintsProtectionRequest) Validate() error
Validate validates a GetAPIConstraintsProtectionRequest.
type GetAPIConstraintsProtectionResponse ¶ added in v2.5.0
type GetAPIConstraintsProtectionResponse ProtectionsResponse
GetAPIConstraintsProtectionResponse contains the status of various protection flags assigned to a security policy.
type GetActivationHistoryRequest ¶ added in v2.14.0
type GetActivationHistoryRequest struct {
ConfigID int `json:"configId"`
}
GetActivationHistoryRequest is used to request the activation history for a configuration.
func (GetActivationHistoryRequest) Validate ¶ added in v2.14.0
func (v GetActivationHistoryRequest) Validate() error
Validate validates a GetActivationHistoryRequest.
type GetActivationHistoryResponse ¶ added in v2.14.0
type GetActivationHistoryResponse struct { ConfigID int `json:"configId"` ActivationHistory []Activation `json:"activationHistory,omitempty"` }
GetActivationHistoryResponse lists the activation history for a configuration.
type GetActivationsRequest ¶
type GetActivationsRequest struct {
ActivationID int `json:"activationId"`
}
GetActivationsRequest is used to request the status of an activation request.
func (GetActivationsRequest) Validate ¶
func (v GetActivationsRequest) Validate() error
Validate validates a GetActivationsRequest.
type GetActivationsResponse ¶
type GetActivationsResponse struct { DispatchCount int `json:"dispatchCount"` ActivationID int `json:"activationId"` Action string `json:"action"` Status StatusValue `json:"status"` Network NetworkValue `json:"network"` Estimate string `json:"estimate"` CreatedBy string `json:"createdBy"` CreateDate time.Time `json:"createDate"` ActivationConfigs []struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` ConfigVersion int `json:"configVersion"` PreviousConfigVersion int `json:"previousConfigVersion"` } `json:"activationConfigs"` }
GetActivationsResponse is returned from a call to GetActivations.
type GetAdvancedSettingsEvasivePathMatchRequest ¶ added in v2.9.0
type GetAdvancedSettingsEvasivePathMatchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` }
GetAdvancedSettingsEvasivePathMatchRequest is used to retrieve the EvasivePathMatch setting
func (GetAdvancedSettingsEvasivePathMatchRequest) Validate ¶ added in v2.9.0
func (v GetAdvancedSettingsEvasivePathMatchRequest) Validate() error
Validate validates GetAdvancedSettingssEvasivePathMatchRequest
type GetAdvancedSettingsEvasivePathMatchResponse ¶ added in v2.9.0
type GetAdvancedSettingsEvasivePathMatchResponse struct {
EnablePathMatch bool `json:"enablePathMatch"`
}
GetAdvancedSettingsEvasivePathMatchResponse returns the EvasivePathMatch setting
type GetAdvancedSettingsLoggingRequest ¶ added in v2.2.0
type GetAdvancedSettingsLoggingRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` }
GetAdvancedSettingsLoggingRequest is used to retrieve the HTTP header logging settings for a configuration or policy.
func (GetAdvancedSettingsLoggingRequest) Validate ¶ added in v2.2.0
func (v GetAdvancedSettingsLoggingRequest) Validate() error
Validate validates a GetAdvancedSettingsLoggingsRequest.
type GetAdvancedSettingsLoggingResponse ¶ added in v2.2.0
type GetAdvancedSettingsLoggingResponse struct { Override json.RawMessage `json:"override,omitempty"` AllowSampling bool `json:"allowSampling"` Cookies *AdvancedSettingsCookies `json:"cookies,omitempty"` CustomHeaders *AdvancedSettingsCustomHeaders `json:"customHeaders,omitempty"` StandardHeaders *AdvancedSettingsStandardHeaders `json:"standardHeaders,omitempty"` }
GetAdvancedSettingsLoggingResponse is returned from a call to GetAdvancedSettingsLogging.
type GetAdvancedSettingsPragmaRequest ¶ added in v2.5.0
type GetAdvancedSettingsPragmaRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Group string `json:"group"` }
GetAdvancedSettingsPragmaRequest is used to retrieve the pragma settings for a security policy.
func (GetAdvancedSettingsPragmaRequest) Validate ¶ added in v2.5.0
func (v GetAdvancedSettingsPragmaRequest) Validate() error
Validate validates a GetAdvancedSettingsPragmaRequest.
type GetAdvancedSettingsPragmaResponse ¶ added in v2.5.0
type GetAdvancedSettingsPragmaResponse struct { Action string `json:"action,,omitempty"` ConditionOperator string `json:"conditionOperator,omitempty"` ExcludeCondition []ExcludeCondition `json:"excludeCondition,omitempty"` }
GetAdvancedSettingsPragmaResponse is returned from a call to GetAdvancedSettingsPragma.
type GetAdvancedSettingsPrefetchRequest ¶ added in v2.2.0
type GetAdvancedSettingsPrefetchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Group string `json:"group"` }
GetAdvancedSettingsPrefetchRequest is used to retrieve the prefetch request settings.
func (GetAdvancedSettingsPrefetchRequest) Validate ¶ added in v2.2.0
func (v GetAdvancedSettingsPrefetchRequest) Validate() error
Validate validates a GetAdvancedSettingsPrefetchRequest.
type GetAdvancedSettingsPrefetchResponse ¶ added in v2.2.0
type GetAdvancedSettingsPrefetchResponse struct { AllExtensions bool `json:"allExtensions"` EnableAppLayer bool `json:"enableAppLayer"` EnableRateControls bool `json:"enableRateControls"` Extensions []string `json:"extensions,omitempty"` }
GetAdvancedSettingsPrefetchResponse is returned from a call to GetAdvancedSettingsPrefetch.
type GetApiEndpointsRequest ¶ added in v2.2.0
type GetApiEndpointsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Name string `json:"-"` PolicyID string `json:"-"` ID int `json:"-"` }
GetApiEndpointsRequest is used to retrieve the endpoints associated with a security policy.
func (GetApiEndpointsRequest) Validate ¶ added in v2.2.0
func (v GetApiEndpointsRequest) Validate() error
Validate validates a GetApiEndpointsRequest.
type GetApiEndpointsResponse ¶ added in v2.2.0
type GetApiEndpointsResponse struct { APIEndpoints []struct { ID int `json:"id"` Name string `json:"name"` BasePath string `json:"basePath"` APIEndPointHosts []string `json:"apiEndPointHosts"` StagingVersion struct { Status string `json:"status"` VersionNumber int `json:"versionNumber"` } `json:"stagingVersion"` ProductionVersion struct { Status string `json:"status"` VersionNumber int `json:"versionNumber"` } `json:"productionVersion"` RequestConstraintsEnabled bool `json:"requestConstraintsEnabled"` } `json:"apiEndpoints"` }
GetApiEndpointsResponse is returned from a call to GetApiEndpoints.
type GetApiHostnameCoverageMatchTargetsRequest ¶ added in v2.2.0
type GetApiHostnameCoverageMatchTargetsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostname string `json:"-"` }
GetApiHostnameCoverageMatchTargetsRequest is used to retrieve the API and website match targets that protect a hostname.
func (GetApiHostnameCoverageMatchTargetsRequest) Validate ¶ added in v2.2.0
func (v GetApiHostnameCoverageMatchTargetsRequest) Validate() error
Validate validates a GetApiHostnameCoverageMatchTargetsRequest.
type GetApiHostnameCoverageMatchTargetsResponse ¶ added in v2.2.0
type GetApiHostnameCoverageMatchTargetsResponse struct { MatchTargets struct { WebsiteTargets []struct { Type string `json:"type"` BypassNetworkLists *HostnameCoverageMatchTargetBypassNetworkLists `json:"bypassNetworkLists,omitempty"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` DefaultFile string `json:"defaultFile"` EffectiveSecurityControls *HostnameCoverageMatchTargetEffectiveSecurityControls `json:"effectiveSecurityControls,omitempty"` FilePaths []string `json:"filePaths"` Hostnames []string `json:"hostnames"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch bool `json:"isNegativePathMatch"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"sequence"` TargetID int `json:"targetId"` } `json:"websiteTargets"` APITargets []interface{} `json:"apiTargets"` } `json:"matchTargets"` }
GetApiHostnameCoverageMatchTargetsResponse is returned from a call to GetApiHostnameCoverageMatchTargets.
type GetApiHostnameCoverageOverlappingRequest ¶ added in v2.2.0
type GetApiHostnameCoverageOverlappingRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostname string `json:"-"` }
GetApiHostnameCoverageOverlappingRequest is used to retrieve the configuration versions that contain a hostname included in the current configuration version.
func (GetApiHostnameCoverageOverlappingRequest) Validate ¶ added in v2.2.0
func (v GetApiHostnameCoverageOverlappingRequest) Validate() error
Validate validates a GetApiHostnameCoverageOverlappingRequest.
type GetApiHostnameCoverageOverlappingResponse ¶ added in v2.2.0
type GetApiHostnameCoverageOverlappingResponse struct { OverLappingList []struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` ConfigVersion int `json:"configVersion"` ContractID string `json:"contractId"` ContractName string `json:"contractName"` VersionTags []string `json:"versionTags"` } `json:"overLappingList"` }
GetApiHostnameCoverageOverlappingResponse is returned from a call to GetApiHostnameCoverageOverlapping.
type GetApiHostnameCoverageRequest ¶ added in v2.2.0
type GetApiHostnameCoverageRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostname string `json:"-"` }
GetApiHostnameCoverageRequest is used to call GetApiHostnameCoverage.
type GetApiHostnameCoverageResponse ¶ added in v2.2.0
type GetApiHostnameCoverageResponse struct { HostnameCoverage []struct { Configuration *ConfigurationHostnameCoverage `json:"configuration,omitempty"` Status string `json:"status"` HasMatchTarget bool `json:"hasMatchTarget"` Hostname string `json:"hostname"` PolicyNames []string `json:"policyNames"` } `json:"hostnameCoverage"` }
GetApiHostnameCoverageResponse is returned from a call to GetApiHostnameCoverage.
type GetApiRequestConstraintsRequest ¶ added in v2.2.0
type GetApiRequestConstraintsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApiID int `json:"-"` }
GetApiRequestConstraintsRequest is used to retrieve the list of APIs with their constraints and associated actions.
func (GetApiRequestConstraintsRequest) Validate ¶ added in v2.2.0
func (v GetApiRequestConstraintsRequest) Validate() error
Validate validates a GetApiRequestConstraintsRequest.
type GetApiRequestConstraintsResponse ¶ added in v2.2.0
type GetApiRequestConstraintsResponse struct {
APIEndpoints []ApiEndpoint `json:"apiEndpoints,omitempty"`
}
GetApiRequestConstraintsResponse is returned from a call to GetApiRequestConstraints.
type GetAttackGroupRecommendationsRequest ¶ added in v2.8.1
type GetAttackGroupRecommendationsRequest struct { ConfigID int Version int PolicyID string Group string RulesetType RulesetType }
GetAttackGroupRecommendationsRequest is used to retrieve tuning recommendations for a specific attack group.
func (GetAttackGroupRecommendationsRequest) Validate ¶ added in v2.8.1
func (v GetAttackGroupRecommendationsRequest) Validate() error
Validate validates a GetAttackGroupRecommendationsRequest.
type GetAttackGroupRecommendationsResponse ¶ added in v2.8.1
type GetAttackGroupRecommendationsResponse AttackGroupRecommendation
GetAttackGroupRecommendationsResponse is returned from a call to GetAttackGroupRecommendations.
type GetAttackGroupRequest ¶ added in v2.5.0
type GetAttackGroupRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Group string `json:"group"` }
GetAttackGroupRequest is used to retrieve a list of attack groups with their associated actions.
func (GetAttackGroupRequest) Validate ¶ added in v2.5.0
func (v GetAttackGroupRequest) Validate() error
Validate validates a GetAttackGroupConditionExceptionRequest.
type GetAttackGroupResponse ¶ added in v2.5.0
type GetAttackGroupResponse struct { Action string `json:"action,omitempty"` ConditionException *AttackGroupConditionException `json:"conditionException,omitempty"` }
GetAttackGroupResponse is returned from a call to GetAttackGroup.
func (GetAttackGroupResponse) IsEmptyConditionException ¶ added in v2.5.0
func (r GetAttackGroupResponse) IsEmptyConditionException() bool
IsEmptyConditionException checks whether an attack group's ConditionException field is empty.
type GetAttackGroupsRequest ¶ added in v2.5.0
type GetAttackGroupsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Group string `json:"group,omitempty"` }
GetAttackGroupsRequest is used to retrieve a list of attack groups with their associated actions.
func (GetAttackGroupsRequest) Validate ¶ added in v2.5.0
func (v GetAttackGroupsRequest) Validate() error
Validate validates a GetAttackGroupConditionExceptionsRequest.
type GetAttackGroupsResponse ¶ added in v2.5.0
type GetAttackGroupsResponse struct { AttackGroups []struct { Group string `json:"group,omitempty"` Action string `json:"action,omitempty"` ConditionException *AttackGroupConditionException `json:"conditionException,omitempty"` } `json:"attackGroupActions,omitempty"` }
GetAttackGroupsResponse is returned from a call to GetAttackGroups.
type GetBypassNetworkListsRequest ¶ added in v2.2.0
type GetBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` }
GetBypassNetworkListsRequest is used to list which network lists are used in the bypass network lists settings.
func (GetBypassNetworkListsRequest) Validate ¶ added in v2.2.0
func (v GetBypassNetworkListsRequest) Validate() error
Validate validates a GetBypassNetworkListsRequest.
type GetBypassNetworkListsResponse ¶ added in v2.2.0
type GetBypassNetworkListsResponse struct { NetworkLists []struct { Name string `json:"name"` ID string `json:"id"` } `json:"networkLists"` }
GetBypassNetworkListsResponse is returned from a call to GetBypassNetworkLists.
type GetConfigurationCloneRequest ¶
type GetConfigurationCloneRequest struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` VersionNotes string `json:"versionNotes"` CreateDate time.Time `json:"createDate"` CreatedBy string `json:"createdBy"` BasedOn int `json:"basedOn"` Production struct { Status string `json:"status"` Time time.Time `json:"time"` } `json:"production"` Staging struct { Status string `json:"status"` } `json:"staging"` }
GetConfigurationCloneRequest is used to retrieve information about an existing security configuration.
func (GetConfigurationCloneRequest) Validate ¶
func (v GetConfigurationCloneRequest) Validate() error
Validate validates a GetConfigurationCloneRequest.
type GetConfigurationCloneResponse ¶
type GetConfigurationCloneResponse struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` VersionNotes string `json:"versionNotes"` CreateDate time.Time `json:"createDate"` CreatedBy string `json:"createdBy"` BasedOn int `json:"basedOn"` Production struct { Status string `json:"status"` Time time.Time `json:"time"` } `json:"production"` Staging struct { Status string `json:"status"` } `json:"staging"` }
GetConfigurationCloneResponse is returned from a call to GetConfigurationClone.
type GetConfigurationRequest ¶ added in v2.2.0
type GetConfigurationRequest struct {
ConfigID int `json:"configId"`
}
GetConfigurationRequest GetConfigurationRequest is used to retrieve information about a specific configuration.
func (GetConfigurationRequest) Validate ¶ added in v2.2.0
func (v GetConfigurationRequest) Validate() error
Validate validates a GetConfigurationRequest.
type GetConfigurationResponse ¶ added in v2.2.0
type GetConfigurationResponse struct { Description string `json:"description,omitempty"` FileType string `json:"fileType,omitempty"` ID int `json:"id,omitempty"` LatestVersion int `json:"latestVersion,omitempty"` Name string `json:"name,omitempty"` StagingVersion int `json:"stagingVersion,omitempty"` TargetProduct string `json:"targetProduct,omitempty"` ProductionHostnames []string `json:"productionHostnames,omitempty"` ProductionVersion int `json:"productionVersion,omitempty"` }
GetConfigurationResponse is returned from a call to GetConfiguration.
type GetConfigurationVersionCloneRequest ¶ added in v2.2.0
type GetConfigurationVersionCloneRequest struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` VersionNotes string `json:"versionNotes"` CreateDate time.Time `json:"createDate"` CreatedBy string `json:"createdBy"` BasedOn int `json:"basedOn"` Production struct { Status string `json:"status"` Time time.Time `json:"time"` } `json:"production"` Staging struct { Status string `json:"status"` } `json:"staging"` }
GetConfigurationVersionCloneRequest is used to retrieve information about an existing configuration version.
func (GetConfigurationVersionCloneRequest) Validate ¶ added in v2.2.0
func (v GetConfigurationVersionCloneRequest) Validate() error
Validate validates a GetConfigurationCloneRequest.
type GetConfigurationVersionCloneResponse ¶ added in v2.2.0
type GetConfigurationVersionCloneResponse struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` VersionNotes string `json:"versionNotes"` CreateDate time.Time `json:"createDate"` CreatedBy string `json:"createdBy"` BasedOn int `json:"basedOn"` Production struct { Status string `json:"status"` Time time.Time `json:"time"` } `json:"production"` Staging struct { Status string `json:"status"` } `json:"staging"` }
GetConfigurationVersionCloneResponse is returned from a call to GetConfigurationVersionClone.
type GetConfigurationVersionsRequest ¶
type GetConfigurationVersionsRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` }
GetConfigurationVersionsRequest is used to retrieve the versions of a security configuration.
type GetConfigurationVersionsResponse ¶
type GetConfigurationVersionsResponse struct { ConfigID int `json:"configId,omitempty"` ConfigName string `json:"configName,omitempty"` LastCreatedVersion int `json:"lastCreatedVersion,omitempty"` Page int `json:"page,omitempty"` PageSize int `json:"pageSize,omitempty"` TotalSize int `json:"totalSize,omitempty"` VersionList []struct { ConfigID int `json:"configId,omitempty"` Production struct { Status string `json:"status,omitempty"` } `json:"production,omitempty"` Staging struct { Status string `json:"status,omitempty"` } `json:"staging,omitempty"` Version int `json:"version,omitempty"` BasedOn int `json:"basedOn,omitempty"` } `json:"versionList,omitempty"` }
GetConfigurationVersionsResponse is returned from a call to GetConfigurationVersions.
type GetConfigurationsRequest ¶
GetConfigurationsRequest is used to list the available security configurations.
func (GetConfigurationsRequest) Validate ¶ added in v2.2.0
func (v GetConfigurationsRequest) Validate() error
Validate validates a GetConfigurationsRequest.
type GetConfigurationsResponse ¶
type GetConfigurationsResponse struct { Configurations []struct { Description string `json:"description,omitempty"` FileType string `json:"fileType,omitempty"` ID int `json:"id,omitempty"` LatestVersion int `json:"latestVersion,omitempty"` Name string `json:"name,omitempty"` StagingVersion int `json:"stagingVersion,omitempty"` TargetProduct string `json:"targetProduct,omitempty"` ProductionHostnames []string `json:"productionHostnames,omitempty"` ProductionVersion int `json:"productionVersion,omitempty"` } `json:"configurations,omitempty"` }
GetConfigurationsResponse is returned from a call to GetConfigurations.
type GetContractsGroupsRequest ¶ added in v2.2.0
type GetContractsGroupsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ContractID string `json:"-"` GroupID int `json:"-"` }
GetContractsGroupsRequest is used to retrieve the list of contracts and groups for your account.
type GetContractsGroupsResponse ¶ added in v2.2.0
type GetContractsGroupsResponse struct { ContractGroups []struct { ContractID string `json:"contractId"` DisplayName string `json:"displayName"` GroupID int `json:"groupId"` } `json:"contract_groups"` }
GetContractsGroupsResponse is returned from a call to GetContractsGroups.
type GetCustomDenyListRequest ¶ added in v2.2.0
type GetCustomDenyListRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` ID string `json:"id,omitempty"` }
GetCustomDenyListRequest is used to retrieve the custom deny actions for a configuration.
func (GetCustomDenyListRequest) Validate ¶ added in v2.2.0
func (v GetCustomDenyListRequest) Validate() error
Validate validates a GetCustomDenysRequest.
type GetCustomDenyListResponse ¶ added in v2.2.0
type GetCustomDenyListResponse struct { CustomDenyList []struct { Description string `json:"description,omitempty"` Name string `json:"name"` ID customDenyID `json:"id"` Parameters []struct { DisplayName string `json:"-"` Name string `json:"name"` Value string `json:"value"` } `json:"parameters"` } `json:"customDenyList"` }
GetCustomDenyListResponse is returned from a call to GetCustomDenyList.
type GetCustomDenyRequest ¶ added in v2.2.0
type GetCustomDenyRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` ID string `json:"id,omitempty"` }
GetCustomDenyRequest is used to retrieve a specific custom deny action.
func (GetCustomDenyRequest) Validate ¶ added in v2.2.0
func (v GetCustomDenyRequest) Validate() error
Validate validates a GetCustomDenyRequest.
type GetCustomDenyResponse ¶ added in v2.2.0
type GetCustomDenyResponse struct { Description string `json:"description,omitempty"` Name string `json:"name"` ID customDenyID `json:"-"` Parameters []struct { DisplayName string `json:"-"` Name string `json:"name"` Value string `json:"value"` } `json:"parameters"` }
GetCustomDenyResponse is returned from a call to GetCustomDeny.
type GetCustomRuleActionRequest ¶
type GetCustomRuleActionRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` RuleID int `json:"ruleId"` }
GetCustomRuleActionRequest is used to retrieve the action for a custom rule.
func (GetCustomRuleActionRequest) Validate ¶
func (v GetCustomRuleActionRequest) Validate() error
Validate validates a GetCustomRuleActionRequest.
type GetCustomRuleActionResponse ¶
type GetCustomRuleActionResponse struct { Action string `json:"action,omitempty"` CanUseAdvancedActions bool `json:"canUseAdvancedActions,omitempty"` Link string `json:"link,omitempty"` Name string `json:"name,omitempty"` RuleID int `json:"ruleId,omitempty"` }
GetCustomRuleActionResponse is returned from a call to GetCustomRuleAction.
type GetCustomRuleActionsRequest ¶
type GetCustomRuleActionsRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` RuleID int `json:"ruleId"` }
GetCustomRuleActionsRequest is used to retrieve the custom rule actions for a configuration.
func (GetCustomRuleActionsRequest) Validate ¶
func (v GetCustomRuleActionsRequest) Validate() error
Validate validates a GetCustomRuleActionsRequest.
type GetCustomRuleActionsResponse ¶
type GetCustomRuleActionsResponse []struct { Action string `json:"action,omitempty"` CanUseAdvancedActions bool `json:"canUseAdvancedActions,omitempty"` Link string `json:"link,omitempty"` Name string `json:"name,omitempty"` RuleID int `json:"ruleId,omitempty"` }
GetCustomRuleActionsResponse is returned from a call to GetCustomRuleActions.
type GetCustomRuleRequest ¶
type GetCustomRuleRequest struct { ConfigID int `json:"configid,omitempty"` ID int `json:"id,omitempty"` }
GetCustomRuleRequest is used to retrieve the details of a custom rule.
func (GetCustomRuleRequest) Validate ¶
func (v GetCustomRuleRequest) Validate() error
Validate validates a GetCustomRuleRequest.
type GetCustomRuleResponse ¶
type GetCustomRuleResponse CustomRuleResponse
GetCustomRuleResponse is returned from a call to GetCustomRule.
type GetCustomRulesRequest ¶
GetCustomRulesRequest is used to retrieve the custom rules for a configuration.
func (GetCustomRulesRequest) Validate ¶
func (v GetCustomRulesRequest) Validate() error
Validate validates a GetCustomRulesRequest.
type GetCustomRulesResponse ¶
type GetCustomRulesResponse struct { CustomRules []struct { ID int `json:"id"` Link string `json:"link"` Name string `json:"name"` Status string `json:"status"` Version int `json:"version"` EffectiveTimePeriod *CustomRuleEffectivePeriod `json:"effectiveTimePeriod,omitempty"` SamplingRate *int `json:"samplingRate,omitempty"` } `json:"customRules"` }
GetCustomRulesResponse is returned from a call to GetCustomRules.
type GetEvalHostRequest ¶ added in v2.2.0
GetEvalHostRequest is used to retrieve the evaluation hostnames for a configuration. Deprecated: this struct will be removed in a future release.
func (GetEvalHostRequest) Validate ¶ added in v2.2.0
func (v GetEvalHostRequest) Validate() error
Validate validates a GetEvalHostRequest. Deprecated: this method will be removed in a future release.
type GetEvalHostResponse ¶ added in v2.2.0
type GetEvalHostResponse struct {
Hostnames []string `json:"hostnames"`
}
GetEvalHostResponse is returned from a call to GetEvalHost. Deprecated: this struct will be removed in a future release.
type GetEvalHostsRequest ¶ added in v2.2.0
GetEvalHostsRequest is used to retrieve the evaluation hostnames for a configuration.
func (GetEvalHostsRequest) Validate ¶ added in v2.2.0
func (v GetEvalHostsRequest) Validate() error
Validate validates a GetEvalHostsRequest.
type GetEvalHostsResponse ¶ added in v2.2.0
type GetEvalHostsResponse struct {
Hostnames []string `json:"hostnames"`
}
GetEvalHostsResponse is returned from a call to GetEvalHosts.
type GetEvalProtectHostRequest ¶ added in v2.2.0
GetEvalProtectHostRequest is used to call GetEvalProtectHost. Deprecated: this struct will be removed in a future release.
func (GetEvalProtectHostRequest) Validate ¶ added in v2.2.0
func (v GetEvalProtectHostRequest) Validate() error
Validate validates a GetEvalProtectHostRequest. Deprecated: this method will be removed in a future release.
type GetEvalProtectHostResponse ¶ added in v2.2.0
type GetEvalProtectHostResponse struct {
Hostnames []string `json:"hostnames"`
}
GetEvalProtectHostResponse is returned from a call to GetEvalProtectHost. Deprecated: this struct will be removed in a future release.
type GetEvalProtectHostsRequest ¶ added in v2.2.0
GetEvalProtectHostsRequest is used to call GetEvalProtectHosts.
func (GetEvalProtectHostsRequest) Validate ¶ added in v2.2.0
func (v GetEvalProtectHostsRequest) Validate() error
Validate validates a GetEvalProtectHostsRequest.
type GetEvalProtectHostsResponse ¶ added in v2.2.0
type GetEvalProtectHostsResponse struct {
Hostnames []string `json:"hostnames"`
}
GetEvalProtectHostsResponse is returned from a call to GetEvalProtectHosts.
type GetEvalRequest ¶ added in v2.0.4
type GetEvalRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
GetEvalRequest is used to retrieve the mode setting that conveys how rules will be kept up to date.
func (GetEvalRequest) Validate ¶ added in v2.0.4
func (v GetEvalRequest) Validate() error
Validate validates a GetEvalRequest.
type GetEvalResponse ¶ added in v2.0.4
type GetEvalResponse struct { Current string `json:"current,omitempty"` Mode string `json:"mode,omitempty"` Eval string `json:"eval,omitempty"` Evaluating string `json:"evaluating,omitempty"` Expires string `json:"expires,omitempty"` }
GetEvalResponse is returned from a call to GetEvalResponse.
type GetEvalRuleRequest ¶ added in v2.5.0
type GetEvalRuleRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"ruleId"` }
GetEvalRuleRequest is used to retrieve a rule available for evaluation and its action.
func (GetEvalRuleRequest) Validate ¶ added in v2.5.0
func (v GetEvalRuleRequest) Validate() error
Validate validates a GetEvalRuleRequest.
type GetEvalRuleResponse ¶ added in v2.5.0
type GetEvalRuleResponse struct { Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` }
GetEvalRuleResponse is returned from a call to GetEvalRule.
func (*GetEvalRuleResponse) IsEmptyConditionException ¶ added in v2.5.0
func (r *GetEvalRuleResponse) IsEmptyConditionException() bool
IsEmptyConditionException checks whether the ConditionException field is empty.
type GetEvalRulesRequest ¶ added in v2.5.0
type GetEvalRulesRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` }
GetEvalRulesRequest is used to retrieve the rules available for evaluation and their actions.
func (GetEvalRulesRequest) Validate ¶ added in v2.5.0
func (v GetEvalRulesRequest) Validate() error
Validate validates a GetEvalRulesRequest.
type GetEvalRulesResponse ¶ added in v2.5.0
type GetEvalRulesResponse struct { Rules []struct { ID int `json:"id,omitempty"` Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` } `json:"evalRuleActions,omitempty"` }
GetEvalRulesResponse is returned from a call to GetEvalRules.
type GetEvalsRequest ¶ added in v2.0.4
type GetEvalsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
GetEvalsRequest is used to retrieve the mode setting that conveys how rules will be kept up to date. Deprecated: this struct will be removed in a future release.
func (GetEvalsRequest) Validate ¶ added in v2.0.4
func (v GetEvalsRequest) Validate() error
Validate validates a GetEvalsRequest. Deprecated: this method will be removed in a future release.
type GetEvalsResponse ¶ added in v2.0.4
type GetEvalsResponse struct { Current string `json:"current,omitempty"` Mode string `json:"mode,omitempty"` Eval string `json:"eval,omitempty"` Evaluating string `json:"evaluating,omitempty"` Expires string `json:"expires,omitempty"` }
GetEvalsResponse is returned from a call to GetEvalsResponse. Deprecated: this struct will be removed in a future release.
type GetExportConfigurationRequest ¶ added in v2.8.1
type GetExportConfigurationRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` }
GetExportConfigurationRequest is used to call GetExportConfiguration.
type GetExportConfigurationResponse ¶ added in v2.8.1
type GetExportConfigurationResponse struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` BasedOn int `json:"basedOn"` Staging struct { Status string `json:"status"` } `json:"staging"` Production struct { Status string `json:"status"` } `json:"production"` CreateDate time.Time `json:"-"` CreatedBy string `json:"createdBy"` SelectedHosts []string `json:"selectedHosts"` SelectableHosts []string `json:"selectableHosts"` RatePolicies []struct { AdditionalMatchOptions []struct { PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Values []string `json:"values"` } `json:"additionalMatchOptions"` AllTraffic bool `json:"allTraffic,omitempty"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` CreateDate time.Time `json:"-"` Description string `json:"description,omitempty"` FileExtensions *RatePolicyFileExtensions `json:"fileExtensions,omitempty"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames,omitempty"` ID int `json:"id"` MatchType string `json:"matchType"` Name string `json:"name"` Path *RatePoliciesPath `json:"path,omitempty"` PathMatchType string `json:"pathMatchType,omitempty"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` QueryParameters *RatePoliciesQueryParameters `json:"queryParameters,omitempty"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Type string `json:"type"` UpdateDate time.Time `json:"-"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` Used bool `json:"-"` } `json:"ratePolicies"` ReputationProfiles []struct { Condition *ConditionReputationProfile `json:"condition,omitempty"` Context string `json:"context,omitempty"` ContextReadable string `json:"-"` Enabled bool `json:"-"` ID int `json:"id"` Name string `json:"name"` SharedIPHandling string `json:"sharedIpHandling"` Threshold int `json:"threshold"` } `json:"reputationProfiles"` CustomRules []struct { ID int `json:"id"` Name string `json:"name"` Description string `json:"description,omitempty"` Version int `json:"-"` RuleActivated bool `json:"-"` Structured bool `json:"-"` Tag []string `json:"tag,omitempty"` Conditions []struct { Name *json.RawMessage `json:"name,omitempty"` NameCase *bool `json:"nameCase,omitempty"` NameWildcard *bool `json:"nameWildcard,omitempty"` PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Value *json.RawMessage `json:"value,omitempty"` ValueCase *bool `json:"valueCase,omitempty"` ValueExactMatch *bool `json:"valueExactMatch,omitempty"` ValueIgnoreSegment *bool `json:"valueIgnoreSegment,omitempty"` ValueNormalize *bool `json:"valueNormalize,omitempty"` ValueRecursive *bool `json:"valueRecursive,omitempty"` ValueWildcard *bool `json:"valueWildcard,omitempty"` UseXForwardForHeaders *bool `json:"useXForwardForHeaders,omitempty"` } `json:"conditions,omitempty"` EffectiveTimePeriod *CustomRuleEffectivePeriod `json:"effectiveTimePeriod,omitempty"` SamplingRate int `json:"samplingRate,omitempty"` LoggingOptions *json.RawMessage `json:"loggingOptions,omitempty"` Operation string `json:"operation,omitempty"` } `json:"customRules"` Rulesets []struct { ID int `json:"id"` RulesetVersionID int `json:"rulesetVersionId"` Type string `json:"type"` ReleaseDate time.Time `json:"releaseDate"` Rules *RulesetsRules `json:"rules,omitempty"` AttackGroups []struct { Group string `json:"group"` GroupName string `json:"groupName"` Threshold int `json:"threshold,omitempty"` } `json:"attackGroups,omitempty"` } `json:"rulesets"` MatchTargets struct { APITargets []struct { Sequence int `json:"sequence"` ID int `json:"id,omitempty"` TargetID int `json:"targetId"` Type string `json:"type,omitempty"` Apis []struct { ID int `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"apis,omitempty"` SecurityPolicy struct { PolicyID string `json:"policyId,omitempty"` } `json:"securityPolicy,omitempty"` BypassNetworkLists []struct { Name string `json:"name,omitempty"` ID string `json:"id,omitempty"` } `json:"bypassNetworkLists,omitempty"` } `json:"apiTargets,omitempty"` WebsiteTargets []struct { Type string `json:"type"` BypassNetworkLists []struct { ID string `json:"id"` Name string `json:"name"` } `json:"bypassNetworkLists,omitempty"` DefaultFile string `json:"defaultFile"` FilePaths []string `json:"filePaths,omitempty"` FileExtensions []string `json:"fileExtensions,omitempty"` Hostnames []string `json:"hostnames,omitempty"` ID int `json:"id"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch bool `json:"isNegativePathMatch"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"-"` } `json:"websiteTargets"` } `json:"matchTargets"` SecurityPolicies []struct { ID string `json:"id"` Name string `json:"name"` HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey"` SecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` ApplyMalwareControls bool `json:"applyMalwareControls"` } `json:"securityControls"` WebApplicationFirewall struct { RuleActions []struct { Action string `json:"action"` ID int `json:"id"` RulesetVersionID int `json:"rulesetVersionId"` Conditions *RuleConditions `json:"conditions,omitempty"` AdvancedExceptionsList *AdvancedExceptions `json:"advancedExceptions,omitempty"` Exception *RuleException `json:"exception,omitempty"` } `json:"ruleActions,omitempty"` AttackGroupActions []struct { Action string `json:"action"` Group string `json:"group"` RulesetVersionID int `json:"rulesetVersionId"` AdvancedExceptionsList *AttackGroupAdvancedExceptions `json:"advancedExceptions,omitempty"` Exception *AttackGroupException `json:"exception,omitempty"` } `json:"attackGroupActions,omitempty"` Evaluation *WebApplicationFirewallEvaluation `json:"evaluation,omitempty"` ThreatIntel string `json:"threatIntel"` } `json:"webApplicationFirewall"` CustomRuleActions []struct { Action string `json:"action"` ID int `json:"id"` } `json:"customRuleActions,omitempty"` APIRequestConstraints *APIRequestConstraintsexp `json:"apiRequestConstraints,omitempty"` ClientReputation struct { ReputationProfileActions *ClientReputationReputationProfileActions `json:"reputationProfileActions,omitempty"` } `json:"clientReputation"` RatePolicyActions *SecurityPoliciesRatePolicyActions `json:"ratePolicyActions,omitempty"` MalwarePolicyActions []MalwarePolicyActionBody `json:"malwarePolicyActions,omitempty"` IPGeoFirewall *IPGeoFirewall `json:"ipGeoFirewall,omitempty"` PenaltyBox *SecurityPoliciesPenaltyBox `json:"penaltyBox,omitempty"` EvaluationPenaltyBox *SecurityPoliciesPenaltyBox `json:"evaluationPenaltyBox,omitempty"` SlowPost *SlowPostexp `json:"slowPost,omitempty"` LoggingOverrides *LoggingOverridesexp `json:"loggingOverrides,omitempty"` PragmaHeader *GetAdvancedSettingsPragmaResponse `json:"pragmaHeader,omitempty"` EvasivePathMatch *EvasivePathMatchexp `json:"evasivePathMatch,omitempty"` } `json:"securityPolicies"` Siem *Siemexp `json:"siem,omitempty"` AdvancedOptions *AdvancedOptionsexp `json:"advancedOptions,omitempty"` CustomDenyList *CustomDenyListexp `json:"customDenyList,omitempty"` Evaluating struct { SecurityPolicies []EvaluatingSecurityPolicy `json:"securityPolicies,omitempty"` } `json:"evaluating,omitempty"` MalwarePolicies []MalwarePolicyBody `json:"malwarePolicies,omitempty"` }
GetExportConfigurationResponse is returned from a call to GetExportConfiguration.
type GetExportConfigurationsRequest ¶
type GetExportConfigurationsRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` }
GetExportConfigurationsRequest is used to call GetExportConfigurations. Deprecated: this struct will be removed in a future release.
type GetExportConfigurationsResponse ¶
type GetExportConfigurationsResponse struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` Version int `json:"version"` BasedOn int `json:"basedOn"` Staging struct { Status string `json:"status"` } `json:"staging"` Production struct { Status string `json:"status"` } `json:"production"` CreateDate time.Time `json:"-"` CreatedBy string `json:"createdBy"` SelectedHosts []string `json:"selectedHosts"` SelectableHosts []string `json:"selectableHosts"` RatePolicies []struct { AdditionalMatchOptions []struct { PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Values []string `json:"values"` } `json:"additionalMatchOptions"` AllTraffic bool `json:"allTraffic,omitempty"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` CreateDate time.Time `json:"-"` Description string `json:"description,omitempty"` FileExtensions *RatePolicyFileExtensions `json:"fileExtensions,omitempty"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames,omitempty"` ID int `json:"id"` MatchType string `json:"matchType"` Name string `json:"name"` Path *RatePoliciesPath `json:"path,omitempty"` PathMatchType string `json:"pathMatchType,omitempty"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` QueryParameters *RatePoliciesQueryParameters `json:"queryParameters,omitempty"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Type string `json:"type"` UpdateDate time.Time `json:"-"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` Used bool `json:"-"` } `json:"ratePolicies"` ReputationProfiles []struct { Condition *ConditionReputationProfile `json:"condition,omitempty"` Context string `json:"context,omitempty"` ContextReadable string `json:"-"` Enabled bool `json:"-"` ID int `json:"id"` Name string `json:"name"` SharedIPHandling string `json:"sharedIpHandling"` Threshold int `json:"threshold"` } `json:"reputationProfiles"` CustomRules []struct { Conditions *ConditionsExp `json:"conditions,omitempty"` Description string `json:"description,omitempty"` ID int `json:"id"` Name string `json:"name"` RuleActivated bool `json:"-"` Structured bool `json:"-"` Tag []string `json:"tag"` Version int `json:"-"` } `json:"customRules"` Rulesets []struct { ID int `json:"id"` RulesetVersionID int `json:"rulesetVersionId"` Type string `json:"type"` ReleaseDate time.Time `json:"releaseDate"` Rules *RulesetsRules `json:"rules,omitempty"` AttackGroups []struct { Group string `json:"group"` GroupName string `json:"groupName"` Threshold int `json:"threshold,omitempty"` } `json:"attackGroups,omitempty"` } `json:"rulesets"` MatchTargets struct { APITargets []struct { Sequence int `json:"-"` ID int `json:"id,omitempty"` Type string `json:"type,omitempty"` Apis []struct { ID int `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"apis,omitempty"` SecurityPolicy struct { PolicyID string `json:"policyId,omitempty"` } `json:"securityPolicy,omitempty"` BypassNetworkLists []struct { Name string `json:"name,omitempty"` ID string `json:"id,omitempty"` } `json:"bypassNetworkLists,omitempty"` } `json:"apiTargets,omitempty"` WebsiteTargets []struct { Type string `json:"type"` BypassNetworkLists []struct { ID string `json:"id"` Name string `json:"name"` } `json:"bypassNetworkLists,omitempty"` DefaultFile string `json:"defaultFile"` FilePaths []string `json:"filePaths,omitempty"` FileExtensions []string `json:"fileExtensions,omitempty"` Hostnames []string `json:"hostnames,omitempty"` ID int `json:"id"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch bool `json:"isNegativePathMatch"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"-"` } `json:"websiteTargets"` } `json:"matchTargets"` SecurityPolicies []struct { ID string `json:"id"` Name string `json:"name"` HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey"` SecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` ApplyMalwareControls bool `json:"applyMalwareControls"` } `json:"securityControls"` WebApplicationFirewall struct { RuleActions []struct { Action string `json:"action"` ID int `json:"id"` RulesetVersionID int `json:"rulesetVersionId"` Conditions *RuleConditions `json:"conditions,omitempty"` Exception *RuleException `json:"exception,omitempty"` } `json:"ruleActions,omitempty"` AttackGroupActions []struct { Action string `json:"action"` Group string `json:"group"` RulesetVersionID int `json:"rulesetVersionId"` AdvancedExceptionsList *AttackGroupAdvancedExceptions `json:"advancedExceptions,omitempty"` Exception *AttackGroupException `json:"exception,omitempty"` } `json:"attackGroupActions,omitempty"` Evaluation *WebApplicationFirewallEvaluation `json:"evaluation,omitempty"` ThreatIntel string `json:"threatIntel"` } `json:"webApplicationFirewall"` CustomRuleActions []struct { Action string `json:"action"` ID int `json:"id"` } `json:"customRuleActions,omitempty"` APIRequestConstraints *APIRequestConstraintsexp `json:"apiRequestConstraints,omitempty"` ClientReputation struct { ReputationProfileActions *ClientReputationReputationProfileActions `json:"reputationProfileActions,omitempty"` } `json:"clientReputation"` RatePolicyActions *SecurityPoliciesRatePolicyActions `json:"ratePolicyActions,omitempty"` IPGeoFirewall struct { Block string `json:"block"` GeoControls struct { BlockedIPNetworkLists struct { NetworkList []string `json:"networkList,omitempty"` } `json:"blockedIPNetworkLists"` } `json:"geoControls"` IPControls struct { AllowedIPNetworkLists struct { NetworkList []string `json:"networkList,omitempty"` } `json:"allowedIPNetworkLists"` BlockedIPNetworkLists struct { NetworkList []string `json:"networkList,omitempty"` } `json:"blockedIPNetworkLists"` } `json:"ipControls"` } `json:"ipGeoFirewall,omitempty"` PenaltyBox *SecurityPoliciesPenaltyBox `json:"penaltyBox,omitempty"` EvaluationPenaltyBox *SecurityPoliciesPenaltyBox `json:"evaluationPenaltyBox,omitempty"` SlowPost *SlowPostexp `json:"slowPost,omitempty"` LoggingOverrides *LoggingOverridesexp `json:"loggingOverrides,omitempty"` PragmaHeader *GetAdvancedSettingsPragmaResponse `json:"pragmaHeader,omitempty"` EvasivePathMatch *EvasivePathMatchexp `json:"evasivePathMatch,omitempty"` } `json:"securityPolicies"` Siem *Siemexp `json:"siem,omitempty"` AdvancedOptions *AdvancedOptionsexp `json:"advancedOptions,omitempty"` CustomDenyList *CustomDenyListexp `json:"customDenyList,omitempty"` Evaluating struct { SecurityPolicies []struct { EffectiveSecurityControls struct { ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` } Hostnames []string `json:"hostnames,omitempty"` SecurityPolicyID string `json:"id"` } } `json:"evaluating"` }
GetExportConfigurationsResponse is returned from a call to GetExportConfigurations. Deprecated: this struct will be removed in a future release.
type GetFailoverHostnamesRequest ¶ added in v2.2.0
type GetFailoverHostnamesRequest struct {
ConfigID int `json:"-"`
}
GetFailoverHostnamesRequest is used to retrieve the failover hostnames for a configuration.
type GetFailoverHostnamesResponse ¶ added in v2.2.0
type GetFailoverHostnamesResponse struct { ConfigID int `json:"-"` ConfigVersion int `json:"-"` HostnameList []struct { Hostname string `json:"hostname"` } `json:"hostnameList"` }
GetFailoverHostnamesResponse is returned from a call to GetFailoverHostnames.
type GetIPGeoProtectionRequest ¶ added in v2.5.0
type GetIPGeoProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyApplicationLayerControls bool `json:"applyNetworkLayerControls"` }
GetIPGeoProtectionRequest is used to retrieve the IPGeo protection settings.
func (GetIPGeoProtectionRequest) Validate ¶ added in v2.5.0
func (v GetIPGeoProtectionRequest) Validate() error
Validate validates a GetIPGeoProtectionRequest.
type GetIPGeoProtectionResponse ¶ added in v2.5.0
type GetIPGeoProtectionResponse ProtectionsResponse
GetIPGeoProtectionResponse is returned from a call to GetIPGeoProtection.
type GetIPGeoProtectionsRequest ¶ added in v2.5.0
type GetIPGeoProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
GetIPGeoProtectionsRequest is used to retrieve the IPGeo protection settings. Deprecated: this struct will be removed in a future release.
func (GetIPGeoProtectionsRequest) Validate ¶ added in v2.5.0
func (v GetIPGeoProtectionsRequest) Validate() error
Validate validates a GetIPGeoProtectionsRequest.
type GetIPGeoProtectionsResponse ¶ added in v2.5.0
type GetIPGeoProtectionsResponse ProtectionsResponse
GetIPGeoProtectionsResponse is returned from a call to GetIPGeoProtections. Deprecated: this struct will be removed in a future release.
type GetIPGeoRequest ¶ added in v2.0.4
type GetIPGeoRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` }
GetIPGeoRequest is used to retrieve the network lists used in IP/Geo firewall settings.
func (GetIPGeoRequest) Validate ¶ added in v2.0.4
func (v GetIPGeoRequest) Validate() error
Validate validates a GetIPGeoRequest.
type GetIPGeoResponse ¶ added in v2.0.4
type GetIPGeoResponse IPGeoFirewall
GetIPGeoResponse is returned from a call to GetIPGeo
type GetMalwareContentTypesRequest ¶ added in v2.16.0
GetMalwareContentTypesRequest is used to retrieve the content types for a configuration version.
func (GetMalwareContentTypesRequest) Validate ¶ added in v2.16.0
func (v GetMalwareContentTypesRequest) Validate() error
Validate validates a GetMalwareContentTypesRequest.
type GetMalwareContentTypesResponse ¶ added in v2.16.0
type GetMalwareContentTypesResponse struct {
ContentTypes []string `json:"malwareContentTypes"`
}
GetMalwareContentTypesResponse is returned from a call to GetMalwareContentTypes.
type GetMalwarePoliciesRequest ¶ added in v2.16.0
GetMalwarePoliciesRequest is used to retrieve the malware policies for a configuration.
func (GetMalwarePoliciesRequest) Validate ¶ added in v2.16.0
func (v GetMalwarePoliciesRequest) Validate() error
Validate validates a GetMalwarePolicysRequest.
type GetMalwarePolicyActionsRequest ¶ added in v2.16.0
type GetMalwarePolicyActionsRequest struct { ConfigID int `json:"configID"` Version int `json:"version"` PolicyID string `json:"policyID"` MalwarePolicyID int `json:"id"` }
GetMalwarePolicyActionsRequest is used to retrieve a configuration's malware policies and their associated actions.
func (GetMalwarePolicyActionsRequest) Validate ¶ added in v2.16.0
func (v GetMalwarePolicyActionsRequest) Validate() error
Validate validates a GetMalwarePolicyActionsRequest.
type GetMalwarePolicyActionsResponse ¶ added in v2.16.0
type GetMalwarePolicyActionsResponse struct {
MalwarePolicyActions []MalwarePolicyActionBody `json:"malwarePolicyActions"`
}
GetMalwarePolicyActionsResponse is returned from a call to GetMalwarePolicyActions.
type GetMalwarePolicyRequest ¶ added in v2.16.0
GetMalwarePolicyRequest is used to retrieve an existing malware policy.
func (GetMalwarePolicyRequest) Validate ¶ added in v2.16.0
func (v GetMalwarePolicyRequest) Validate() error
Validate validates a GetMalwarePolicyRequest.
type GetMalwareProtectionRequest ¶ added in v2.16.0
type GetMalwareProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
GetMalwareProtectionRequest is used to retrieve the malware protection setting for a policy.
func (GetMalwareProtectionRequest) Validate ¶ added in v2.16.0
func (v GetMalwareProtectionRequest) Validate() error
Validate validates a GetMalwareProtectionRequest.
type GetMalwareProtectionResponse ¶ added in v2.16.0
type GetMalwareProtectionResponse ProtectionsResponse
GetMalwareProtectionResponse is returned from a call to GetMalwareProtection.
type GetMalwareProtectionsRequest ¶ added in v2.16.0
type GetMalwareProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
GetMalwareProtectionsRequest is used to retrieve the malware protecton setting for a policy.
func (GetMalwareProtectionsRequest) Validate ¶ added in v2.16.0
func (v GetMalwareProtectionsRequest) Validate() error
Validate validates a GetMalwareProtectionsRequest.
type GetMalwareProtectionsResponse ¶ added in v2.16.0
type GetMalwareProtectionsResponse ProtectionsResponse
GetMalwareProtectionsResponse is returned from a call to GetMalwareProtections.
type GetMatchTargetRequest ¶
type GetMatchTargetRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` TargetID int `json:"targetId"` }
GetMatchTargetRequest is used to retrieve a match target.
func (GetMatchTargetRequest) Validate ¶
func (v GetMatchTargetRequest) Validate() error
Validate validates a GetMatchTargetRequest.
type GetMatchTargetResponse ¶
type GetMatchTargetResponse struct { Type string `json:"type,omitempty"` Apis []struct { ID int `json:"id"` Name string `json:"name"` } `json:"apis,omitempty"` DefaultFile string `json:"defaultFile,omitempty"` Hostnames []string `json:"hostnames,omitempty"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch,omitempty"` IsNegativePathMatch *json.RawMessage `json:"isNegativePathMatch,omitempty"` FilePaths []string `json:"filePaths,omitempty"` FileExtensions []string `json:"fileExtensions,omitempty"` SecurityPolicy struct { PolicyID string `json:"policyId,omitempty"` } `json:"securityPolicy,omitempty"` Sequence int `json:"-"` TargetID int `json:"targetId"` BypassNetworkLists []struct { Name string `json:"name,omitempty"` ID string `json:"id,omitempty"` } `json:"bypassNetworkLists,omitempty"` }
GetMatchTargetResponse is returned from a call to GetMatchTarget.
type GetMatchTargetSequenceRequest ¶
type GetMatchTargetSequenceRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` Type string `json:"type"` }
GetMatchTargetSequenceRequest is used to retrieve the sequence of match targets for a configuration.
func (GetMatchTargetSequenceRequest) Validate ¶
func (v GetMatchTargetSequenceRequest) Validate() error
Validate validates a GetMatchTargetSequenceRequest.
type GetMatchTargetSequenceResponse ¶
type GetMatchTargetSequenceResponse struct { TargetSequence []MatchTargetItem `json:"targetSequence"` Type string `json:"type"` }
GetMatchTargetSequenceResponse is returned from a call to GetMatchTargetSequence.
type GetMatchTargetsRequest ¶
type GetMatchTargetsRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` TargetID int `json:"targetId"` }
GetMatchTargetsRequest is used to retrieve the match targets for a configuration.
func (GetMatchTargetsRequest) Validate ¶
func (v GetMatchTargetsRequest) Validate() error
Validate validates a GetMatchTargetsRequest.
type GetMatchTargetsResponse ¶
type GetMatchTargetsResponse struct { MatchTargets struct { APITargets []struct { Type string `json:"type,omitempty"` Apis []struct { ID int `json:"id"` Name string `json:"name"` } `json:"apis"` Sequence int `json:"sequence"` TargetID int `json:"targetId"` ConfigID int `json:"configId,omitempty"` ConfigVersion int `json:"configVersion,omitempty"` SecurityPolicy struct { PolicyID string `json:"policyId,omitempty"` } `json:"securityPolicy,omitempty"` BypassNetworkLists []struct { Name string `json:"name,omitempty"` ID string `json:"id,omitempty"` } `json:"bypassNetworkLists,omitempty"` } `json:"apiTargets,omitempty"` WebsiteTargets []struct { ConfigID int `json:"configId,omitempty"` ConfigVersion int `json:"configVersion,omitempty"` DefaultFile string `json:"defaultFile,omitempty"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch,omitempty"` IsNegativePathMatch *json.RawMessage `json:"isNegativePathMatch,omitempty"` Sequence int `json:"-"` TargetID int `json:"targetId,omitempty"` Type string `json:"type,omitempty"` FileExtensions []string `json:"fileExtensions,omitempty"` FilePaths []string `json:"filePaths,omitempty"` Hostnames []string `json:"hostnames,omitempty"` SecurityPolicy struct { PolicyID string `json:"policyId,omitempty"` } `json:"securityPolicy,omitempty"` BypassNetworkLists []struct { Name string `json:"name,omitempty"` ID string `json:"id,omitempty"` } `json:"bypassNetworkLists,omitempty"` } `json:"websiteTargets,omitempty"` } `json:"matchTargets,omitempty"` }
GetMatchTargetsResponse is returned from a call to GetMatchTargets.
type GetNetworkLayerProtectionRequest ¶ added in v2.0.4
type GetNetworkLayerProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
GetNetworkLayerProtectionRequest is used to retrieve the network layer protection setting.
func (GetNetworkLayerProtectionRequest) Validate ¶ added in v2.0.4
func (v GetNetworkLayerProtectionRequest) Validate() error
Validate validates a GetNetworkLayerProtectionRequest.
type GetNetworkLayerProtectionResponse ¶ added in v2.0.4
type GetNetworkLayerProtectionResponse ProtectionsResponse
GetNetworkLayerProtectionResponse is returned from a call to GetNetworkLayerProtection.
type GetNetworkLayerProtectionsRequest ¶ added in v2.0.4
type GetNetworkLayerProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
GetNetworkLayerProtectionsRequest is used to retrieve the network layer protection setting. Deprecated: this struct will be removed in a future release.
func (GetNetworkLayerProtectionsRequest) Validate ¶ added in v2.0.4
func (v GetNetworkLayerProtectionsRequest) Validate() error
Validate validates a GetNetworkLayerProtectionsRequest.
type GetNetworkLayerProtectionsResponse ¶ added in v2.0.4
type GetNetworkLayerProtectionsResponse ProtectionsResponse
GetNetworkLayerProtectionsResponse is returned from a call to GetNetworkLayerProtection. Deprecated: this struct will be removed in a future release.
type GetPenaltyBoxRequest ¶
type GetPenaltyBoxRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Action string `json:"action"` PenaltyBoxProtection bool `json:"penaltyBoxProtection"` }
GetPenaltyBoxRequest is used to retrieve the penalty box settings.
func (GetPenaltyBoxRequest) Validate ¶
func (v GetPenaltyBoxRequest) Validate() error
Validate validates a GetPenaltyBoxRequest.
type GetPenaltyBoxResponse ¶
type GetPenaltyBoxResponse struct { Action string `json:"action"` PenaltyBoxProtection bool `json:"penaltyBoxProtection,omitempty"` }
GetPenaltyBoxResponse is returned from a call to GetPenaltyBox.
type GetPenaltyBoxesRequest ¶
type GetPenaltyBoxesRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
GetPenaltyBoxesRequest is used to retrieve the penalty box settings. Deprecated: this struct will be removed in a future release.
func (GetPenaltyBoxesRequest) Validate ¶
func (v GetPenaltyBoxesRequest) Validate() error
Validate validates a GetPenaltyBoxesRequest. Deprecated: this method will be removed in a future release.
type GetPenaltyBoxesResponse ¶
type GetPenaltyBoxesResponse struct { Action string `json:"action,omitempty"` PenaltyBoxProtection bool `json:"penaltyBoxProtection,omitempty"` }
GetPenaltyBoxesResponse is returned from a call to GetPenaltyBoxes. Deprecated: this struct will be removed in a future release.
type GetPolicyProtectionsRequest ¶ added in v2.0.4
type GetPolicyProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` }
GetPolicyProtectionsRequest is used to retrieve the policy protection setting.
func (GetPolicyProtectionsRequest) Validate ¶ added in v2.0.4
func (v GetPolicyProtectionsRequest) Validate() error
Validate validates a GetPolicyProtectionsRequest.
type GetRatePoliciesRequest ¶
type GetRatePoliciesRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` RatePolicyID int `json:"ratePolicyId"` }
GetRatePoliciesRequest is used to retrieve the rate policies for a configuration.
func (GetRatePoliciesRequest) Validate ¶
func (v GetRatePoliciesRequest) Validate() error
Validate validates a GetRatePolicysRequest.
type GetRatePoliciesResponse ¶
type GetRatePoliciesResponse struct { RatePolicies []struct { ID int `json:"id"` ConfigID int `json:"-"` ConfigVersion int `json:"-"` MatchType string `json:"matchType,omitempty"` Type string `json:"type,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` AverageThreshold int `json:"averageThreshold,omitempty"` BurstThreshold int `json:"burstThreshold,omitempty"` ClientIdentifier string `json:"clientIdentifier,omitempty"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType,omitempty"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path *RatePolicyPath `json:"path,omitempty"` PathMatchType string `json:"pathMatchType,omitempty"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions *RatePolicyFileExtensions `json:"fileExtensions,omitempty"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames,omitempty"` AdditionalMatchOptions []RatePolicyMatchOption `json:"additionalMatchOptions,omitempty"` QueryParameters *RatePolicyQueryParameters `json:"queryParameters,omitempty"` CreateDate string `json:"-"` UpdateDate string `json:"-"` Used json.RawMessage `json:"used"` SameActionOnIpv bool `json:"sameActionOnIpv"` APISelectors *RatePolicyAPISelectors `json:"apiSelectors,omitempty"` BodyParameters *RatePolicyBodyParameters `json:"bodyParameters,omitempty"` } `json:"ratePolicies,omitempty"` }
GetRatePoliciesResponse is returned from a call to GetRatePolicies.
type GetRatePolicyActionRequest ¶
type GetRatePolicyActionRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` ID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
GetRatePolicyActionRequest is used to retrieve a configuration's rate policies and their associated actions. Deprecated: this struct will be removed in a future release.
func (GetRatePolicyActionRequest) Validate ¶
func (v GetRatePolicyActionRequest) Validate() error
Validate validates a GetRatePolicyActionRequest. Deprecated: this method will be removed in a future release.
type GetRatePolicyActionResponse ¶
type GetRatePolicyActionResponse struct { RatePolicyActions []struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action,omitempty"` Ipv6Action string `json:"ipv6Action,omitempty"` } `json:"ratePolicyActions"` }
GetRatePolicyActionResponse is returned from a call to GetRatePolicyAction. Deprecated: this struct will be removed in a future release.
type GetRatePolicyActionsRequest ¶
type GetRatePolicyActionsRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` RatePolicyID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
GetRatePolicyActionsRequest is used to retrieve a configuration's rate policies and their associated actions.
func (GetRatePolicyActionsRequest) Validate ¶
func (v GetRatePolicyActionsRequest) Validate() error
Validate validates a GetRatePolicyActionsRequest.
type GetRatePolicyActionsResponse ¶
type GetRatePolicyActionsResponse struct { RatePolicyActions []struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action,omitempty"` Ipv6Action string `json:"ipv6Action,omitempty"` } `json:"ratePolicyActions,omitempty"` }
GetRatePolicyActionsResponse is returned from a call to GetRatePolicyActions.
type GetRatePolicyRequest ¶
type GetRatePolicyRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` RatePolicyID int `json:"ratePolicyId"` }
GetRatePolicyRequest is used to retrieve information about a specific rate policy.
func (GetRatePolicyRequest) Validate ¶
func (v GetRatePolicyRequest) Validate() error
Validate validates a GetRatePolicyRequest.
type GetRatePolicyResponse ¶
type GetRatePolicyResponse struct { ID int `json:"-"` ConfigID int `json:"-"` ConfigVersion int `json:"-"` MatchType string `json:"matchType,omitempty"` Type string `json:"type,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` AverageThreshold int `json:"averageThreshold,omitempty"` BurstThreshold int `json:"burstThreshold,omitempty"` ClientIdentifier string `json:"clientIdentifier,omitempty"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType,omitempty"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path *RatePolicyPath `json:"path,omitempty"` PathMatchType string `json:"pathMatchType,omitempty"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions *RatePolicyFileExtensions `json:"fileExtensions,omitempty"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames,omitempty"` AdditionalMatchOptions []RatePolicyMatchOption `json:"additionalMatchOptions,omitempty"` QueryParameters *RatePolicyQueryParameters `json:"queryParameters,omitempty"` CreateDate string `json:"-"` UpdateDate string `json:"-"` Used bool `json:"-"` }
GetRatePolicyResponse is returned from a call to GetRatePolicy.
type GetRateProtectionRequest ¶ added in v2.0.4
type GetRateProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyRateControls bool `json:"applyRateControls"` }
GetRateProtectionRequest is used to retrieve the rate protection setting.
func (GetRateProtectionRequest) Validate ¶ added in v2.0.4
func (v GetRateProtectionRequest) Validate() error
Validate validates a GetRateProtectionRequest.
type GetRateProtectionResponse ¶ added in v2.0.4
type GetRateProtectionResponse ProtectionsResponse
GetRateProtectionResponse is returned from a call to GetRateProtection.
type GetRateProtectionsRequest ¶ added in v2.0.4
type GetRateProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyRateControls bool `json:"applyRateControls"` }
GetRateProtectionsRequest is used to retrieve the rate protection setting. Deprecated: this struct will be removed in a future release.
func (GetRateProtectionsRequest) Validate ¶ added in v2.0.4
func (v GetRateProtectionsRequest) Validate() error
Validate validates a GetRateProtectionsRequest.
type GetRateProtectionsResponse ¶ added in v2.0.4
type GetRateProtectionsResponse ProtectionsResponse
GetRateProtectionsResponse is returned from a call to GetRateProtection. Deprecated: this struct will be removed in a future release.
type GetReputationAnalysisRequest ¶ added in v2.2.0
type GetReputationAnalysisRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` }
GetReputationAnalysisRequest is used to retrieve the reputation analysis settings for a security policy.
func (GetReputationAnalysisRequest) Validate ¶ added in v2.2.0
func (v GetReputationAnalysisRequest) Validate() error
Validate validates a GetReputationAnalysisRequest.
type GetReputationAnalysisResponse ¶ added in v2.2.0
type GetReputationAnalysisResponse struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ForwardToHTTPHeader bool `json:"forwardToHTTPHeader"` }
GetReputationAnalysisResponse is returned from a call to GetReputationAnalysis.
type GetReputationProfileActionRequest ¶ added in v2.0.4
type GetReputationProfileActionRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` ReputationProfileID int `json:"id"` Action string `json:"action"` }
GetReputationProfileActionRequest is used to retrieve the details for a specific reputation profile.
func (GetReputationProfileActionRequest) Validate ¶ added in v2.0.4
func (v GetReputationProfileActionRequest) Validate() error
Validate validates a GetReputationProfileActionRequest.
type GetReputationProfileActionResponse ¶ added in v2.0.4
type GetReputationProfileActionResponse struct {
Action string `json:"action,omitempty"`
}
GetReputationProfileActionResponse is returned from a call to GetReputationProfileAction.
type GetReputationProfileActionsRequest ¶ added in v2.0.4
type GetReputationProfileActionsRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` ReputationProfileID int `json:"id"` Action string `json:"action"` }
GetReputationProfileActionsRequest is used to retrieve the list of reputation profiles and their associated actions.
func (GetReputationProfileActionsRequest) Validate ¶ added in v2.0.4
func (v GetReputationProfileActionsRequest) Validate() error
Validate validates a GetReputationProfileActionsRequest.
type GetReputationProfileActionsResponse ¶ added in v2.0.4
type GetReputationProfileActionsResponse struct { ReputationProfiles []struct { Action string `json:"action,omitempty"` ID int `json:"id,omitempty"` } `json:"reputationProfiles,omitempty"` }
GetReputationProfileActionsResponse is returned from a call to GetReputationProfileActions.
type GetReputationProfileRequest ¶ added in v2.0.4
type GetReputationProfileRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` ReputationProfileId int `json:"-"` }
GetReputationProfileRequest is used to retrieve the details for a specific reputation profile.
func (GetReputationProfileRequest) Validate ¶ added in v2.0.4
func (v GetReputationProfileRequest) Validate() error
Validate validates a GetReputationProfileRequest.
type GetReputationProfileResponse ¶ added in v2.0.4
type GetReputationProfileResponse struct { Condition *GetReputationProfileResponseCondition `json:"condition,omitempty"` Context string `json:"context,omitempty"` ContextReadable string `json:"-"` Enabled bool `json:"-"` ID int `json:"-"` Name string `json:"name,omitempty"` Threshold int `json:"threshold,omitempty"` }
GetReputationProfileResponse is returned from a call to GetReputationProfile.
type GetReputationProfileResponseCondition ¶ added in v2.4.1
type GetReputationProfileResponseCondition struct { AtomicConditions []struct { CheckIps *json.RawMessage `json:"checkIps,omitempty"` ClassName string `json:"className,omitempty"` Index int `json:"index,omitempty"` PositiveMatch json.RawMessage `json:"positiveMatch,omitempty"` Value []string `json:"value,omitempty"` Name *json.RawMessage `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` NameWildcard *json.RawMessage `json:"nameWildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard *json.RawMessage `json:"valueWildcard,omitempty"` Host []string `json:"host,omitempty"` } `json:"atomicConditions,omitempty"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` }
GetReputationProfileResponseCondition is used as part of the response to GetReputationProfile.
type GetReputationProfilesRequest ¶ added in v2.0.4
type GetReputationProfilesRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` ReputationProfileId int `json:"-"` }
GetReputationProfilesRequest is used to retrieve the reputation profiles for a configuration.
func (GetReputationProfilesRequest) Validate ¶ added in v2.0.4
func (v GetReputationProfilesRequest) Validate() error
Validate validates a GetReputationProfilesRequest.
type GetReputationProfilesResponse ¶ added in v2.0.4
type GetReputationProfilesResponse struct { ReputationProfiles []struct { Condition *ReputationProfileCondition `json:"condition,omitempty"` Context string `json:"context,omitempty"` ContextReadable string `json:"-"` Enabled bool `json:"-"` ID int `json:"id,omitempty"` Name string `json:"name,omitempty"` SharedIPHandling string `json:"sharedIpHandling,omitempty"` Threshold int `json:"threshold,omitempty"` } `json:"reputationProfiles,omitempty"` }
GetReputationProfilesResponse is returned from a call to GetReputationProfiles.
type GetReputationProtectionRequest ¶ added in v2.0.4
type GetReputationProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyReputationControls bool `json:"applyReputationControls"` }
GetReputationProtectionRequest is used to retrieve the reputation protection setting.
func (GetReputationProtectionRequest) Validate ¶ added in v2.0.4
func (v GetReputationProtectionRequest) Validate() error
Validate validates a GetReputationProtectionRequest.
type GetReputationProtectionResponse ¶ added in v2.0.4
type GetReputationProtectionResponse ProtectionsResponse
GetReputationProtectionResponse is returned from a call to GetReputationProtection.
type GetReputationProtectionsRequest ¶ added in v2.0.4
type GetReputationProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyReputationControls bool `json:"applyReputationControls"` }
GetReputationProtectionsRequest is used to retrieve the reputation protection setting. Deprecated: this struct will be removed in a future release.
func (GetReputationProtectionsRequest) Validate ¶ added in v2.0.4
func (v GetReputationProtectionsRequest) Validate() error
Validate validates a GetReputationProtectionsRequest.
type GetReputationProtectionsResponse ¶ added in v2.0.4
type GetReputationProtectionsResponse ProtectionsResponse
GetReputationProtectionsResponse is returned from a call to GetReputationProtection. Deprecated: this struct will be removed in a future release.
type GetRuleRecommendationsRequest ¶ added in v2.16.0
type GetRuleRecommendationsRequest struct { ConfigID int Version int PolicyID string RuleID int RulesetType RulesetType }
GetRuleRecommendationsRequest is used to retrieve tuning recommendations for a specific rule.
func (GetRuleRecommendationsRequest) Validate ¶ added in v2.16.0
func (v GetRuleRecommendationsRequest) Validate() error
Validate validates a GetAttackGroupRecommendationsRequest.
type GetRuleRecommendationsResponse ¶ added in v2.16.0
type GetRuleRecommendationsResponse RuleRecommendation
GetRuleRecommendationsResponse is returned from a call to GetRuleRecommendations.
type GetRuleRequest ¶ added in v2.5.0
type GetRuleRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` }
GetRuleRequest is used to retrieve a rule together with its action and its condition and exception information.
func (GetRuleRequest) Validate ¶ added in v2.5.0
func (v GetRuleRequest) Validate() error
Validate validates a GetRuleRequest.
type GetRuleResponse ¶ added in v2.5.0
type GetRuleResponse struct { Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` }
GetRuleResponse is returned from a call to GetRule.
func (*GetRuleResponse) IsEmptyConditionException ¶ added in v2.5.0
func (r *GetRuleResponse) IsEmptyConditionException() bool
IsEmptyConditionException checks whether a rule's condition and exception information is empty.
type GetRuleUpgradeRequest ¶ added in v2.0.4
GetRuleUpgradeRequest is used to verify changes in the KRS rule sets.
func (GetRuleUpgradeRequest) Validate ¶ added in v2.0.4
func (v GetRuleUpgradeRequest) Validate() error
Validate validates a GetRuleUpgradeRequest.
type GetRuleUpgradeResponse ¶ added in v2.0.4
type GetRuleUpgradeResponse struct { Current string `json:"current,omitempty"` Evaluating string `json:"evaluating,omitempty"` Latest string `json:"latest,omitempty"` KRSToEvalUpdates *RulesetUpdateData `json:"KRSToEvalUpdates,omitempty"` EvalToEvalUpdates *RulesetUpdateData `json:"EvalToEvalUpdates,omitempty"` KRSToLatestUpdates *RulesetUpdateData `json:"KRSToLatestUpdates,omitempty"` }
GetRuleUpgradeResponse is returned from a call to GetRuleUpgrade.
type GetRulesRequest ¶ added in v2.5.0
type GetRulesRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` }
GetRulesRequest is used to retrieve the rules for a configuration and policy, together with their actions and condition and exception information.
func (GetRulesRequest) Validate ¶ added in v2.5.0
func (v GetRulesRequest) Validate() error
Validate validates a GetRulesRequest.
type GetRulesResponse ¶ added in v2.5.0
type GetRulesResponse struct { Rules []struct { ID int `json:"id,omitempty"` Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` } `json:"ruleActions,omitempty"` }
GetRulesResponse is returned from a call to GetRules.
type GetSecurityPoliciesRequest ¶
type GetSecurityPoliciesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyName string `json:"-"` }
GetSecurityPoliciesRequest is used to retrieve the security policies for a configuration.
func (GetSecurityPoliciesRequest) Validate ¶ added in v2.0.4
func (v GetSecurityPoliciesRequest) Validate() error
Validate validates a GetSecurityPolicysRequest.
type GetSecurityPoliciesResponse ¶
type GetSecurityPoliciesResponse struct { ConfigID int `json:"configId,omitempty"` Version int `json:"version,omitempty"` Policies []struct { PolicyID string `json:"policyId,omitempty"` PolicyName string `json:"policyName,omitempty"` HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey,omitempty"` PolicySecurityControls struct { ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplyReputationControls bool `json:"applyReputationControls,omitempty"` ApplyBotmanControls bool `json:"applyBotmanControls,omitempty"` ApplyAPIConstraints bool `json:"applyApiConstraints,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` } `json:"policySecurityControls,omitempty"` } `json:"policies,omitempty"` }
GetSecurityPoliciesResponse is returned from a call to GetSecurityPolicies.
type GetSecurityPolicyCloneRequest ¶
type GetSecurityPolicyCloneRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` }
GetSecurityPolicyCloneRequest is used to retrieve a security policy.
func (GetSecurityPolicyCloneRequest) Validate ¶
func (v GetSecurityPolicyCloneRequest) Validate() error
Validate validates a GetSecurityPolicyCloneRequest.
type GetSecurityPolicyCloneResponse ¶
type GetSecurityPolicyCloneResponse struct { ConfigID int `json:"configId,omitempty"` PolicyID string `json:"policyId,omitempty"` PolicyName string `json:"policyName,omitempty"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints,omitempty"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyBotmanControls bool `json:"applyBotmanControls,omitempty"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplyReputationControls bool `json:"applyReputationControls,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` } `json:"policySecurityControls,omitempty"` Version int `json:"version,omitempty"` }
GetSecurityPolicyCloneResponse is returned from a call to GetSecurityPolicyClone.
type GetSecurityPolicyClonesRequest ¶
type GetSecurityPolicyClonesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` }
GetSecurityPolicyClonesRequest is used to retrieve the available security policies.
func (GetSecurityPolicyClonesRequest) Validate ¶
func (v GetSecurityPolicyClonesRequest) Validate() error
Validate validates a GetSecurityPolicyClonesRequest.
type GetSecurityPolicyClonesResponse ¶
type GetSecurityPolicyClonesResponse struct { ConfigID int `json:"configId"` Version int `json:"version"` Policies []struct { PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey"` PolicySecurityControls struct { ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplySlowPostControls bool `json:"applySlowPostControls"` } `json:"policySecurityControls"` } `json:"policies"` }
GetSecurityPolicyClonesResponse is returned from a call to GetSecurityPolicyClones.
type GetSecurityPolicyRequest ¶ added in v2.0.4
type GetSecurityPolicyRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` }
GetSecurityPolicyRequest is used to retrieve information about a security policy.
func (GetSecurityPolicyRequest) Validate ¶ added in v2.0.4
func (v GetSecurityPolicyRequest) Validate() error
Validate validates a GetSecurityPolicyRequest.
type GetSecurityPolicyResponse ¶ added in v2.0.4
type GetSecurityPolicyResponse struct { ConfigID int `json:"configId,omitempty"` PolicyID string `json:"policyId,omitempty"` PolicyName string `json:"policyName,omitempty"` DefaultSettings bool `json:"defaultSettings,omitempty"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints,omitempty"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyBotmanControls bool `json:"applyBotmanControls,omitempty"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplyReputationControls bool `json:"applyReputationControls,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` } `json:"policySecurityControls,omitempty"` Version int `json:"version,omitempty"` }
GetSecurityPolicyResponse is returned from a call to GetSecurityPolicy.
type GetSelectableHostnamesRequest ¶
type GetSelectableHostnamesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` ContractID string `json:"-"` GroupID int `json:"-"` }
GetSelectableHostnamesRequest is used to retrieve the selectable hostnames for a configuration.
type GetSelectableHostnamesResponse ¶
type GetSelectableHostnamesResponse struct { AvailableSet []struct { ActiveInProduction bool `json:"activeInProduction,omitempty"` ActiveInStaging bool `json:"activeInStaging,omitempty"` ArlInclusion bool `json:"arlInclusion,omitempty"` Hostname string `json:"hostname,omitempty"` ConfigIDInProduction int `json:"configIdInProduction,omitempty"` ConfigNameInProduction string `json:"configNameInProduction,omitempty"` } `json:"availableSet,omitempty"` ConfigID int `json:"configId,omitempty"` ConfigVersion int `json:"configVersion,omitempty"` ProtectARLInclusionHost bool `json:"protectARLInclusionHost,omitempty"` }
GetSelectableHostnamesResponse is returned from a call to GetSelectableHostnames.
type GetSelectedHostnameRequest ¶
type GetSelectedHostnameRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` HostnameList []Hostname `json:"hostnameList"` }
GetSelectedHostnameRequest is used to retrieve the selected hostnames for a configuration. Deprecated: this struct will be removed in a future release.
func (GetSelectedHostnameRequest) Validate ¶
func (v GetSelectedHostnameRequest) Validate() error
Validate validates a GetSelectedHostnameRequest. Deprecated: this method will be removed in a future release.
type GetSelectedHostnameResponse ¶
type GetSelectedHostnameResponse struct {
HostnameList []Hostname `json:"hostnameList"`
}
GetSelectedHostnameResponse is returned from a call to GetSelectedHostname. Deprecated: this struct will be removed in a future release.
type GetSelectedHostnamesRequest ¶
type GetSelectedHostnamesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` HostnameList []Hostname `json:"hostnameList"` }
GetSelectedHostnamesRequest is used to retrieve the selected hostnames for a configuration.
func (GetSelectedHostnamesRequest) Validate ¶
func (v GetSelectedHostnamesRequest) Validate() error
Validate validates a GetSelectedHostnamesRequest.
type GetSelectedHostnamesResponse ¶
type GetSelectedHostnamesResponse struct {
HostnameList []Hostname `json:"hostnameList,omitempty"`
}
GetSelectedHostnamesResponse is returned from a call to GetSelectedHostnames.
type GetSiemDefinitionsRequest ¶ added in v2.2.0
type GetSiemDefinitionsRequest struct { ID int `json:"id"` SiemDefinitionName string `json:"name"` }
GetSiemDefinitionsRequest is used to retrieve the available SIEM versions.
type GetSiemDefinitionsResponse ¶ added in v2.2.0
type GetSiemDefinitionsResponse struct { SiemDefinitions []struct { ID int `json:"id"` Name string `json:"name"` } `json:"siemDefinitions"` }
GetSiemDefinitionsResponse is returned from a call to GetSiemDefinitions.
type GetSiemSettingRequest ¶ added in v2.2.0
GetSiemSettingRequest is used to retrieve the SIEM settings for a configuration.
type GetSiemSettingResponse ¶ added in v2.2.0
type GetSiemSettingResponse struct { EnableForAllPolicies bool `json:"enableForAllPolicies"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents"` SiemDefinitionID int `json:"siemDefinitionId"` FirewallPolicyIds []string `json:"firewallPolicyIds"` }
GetSiemSettingResponse is returned from a call to GetSiemSettings.
type GetSiemSettingsRequest ¶ added in v2.2.0
GetSiemSettingsRequest is used to retrieve the SIEM settings for a configuration.
func (GetSiemSettingsRequest) Validate ¶ added in v2.2.0
func (v GetSiemSettingsRequest) Validate() error
Validate validates a GetSiemSettingsRequest.
type GetSiemSettingsResponse ¶ added in v2.2.0
type GetSiemSettingsResponse struct { EnableForAllPolicies bool `json:"enableForAllPolicies"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents"` SiemDefinitionID int `json:"siemDefinitionId"` FirewallPolicyIds []string `json:"firewallPolicyIds"` }
GetSiemSettingsResponse is returned from a call to GetSiemSettings.
type GetSlowPostProtectionRequest ¶ added in v2.0.4
type GetSlowPostProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplySlowPostControls bool `json:"applySlowPostControls"` }
GetSlowPostProtectionRequest is used to retrieve the slow post protecton setting for a policy.
func (GetSlowPostProtectionRequest) Validate ¶ added in v2.0.4
func (v GetSlowPostProtectionRequest) Validate() error
Validate validates a GetSlowPostProtectionRequest.
type GetSlowPostProtectionResponse ¶ added in v2.0.4
type GetSlowPostProtectionResponse ProtectionsResponse
GetSlowPostProtectionResponse is returned from a call to GetSlowPostProtection.
type GetSlowPostProtectionSettingRequest ¶
type GetSlowPostProtectionSettingRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` Action string `json:"action"` SlowRateThreshold struct { Rate int `json:"rate"` Period int `json:"period"` } `json:"slowRateThreshold"` DurationThreshold struct { Timeout int `json:"timeout"` } `json:"durationThreshold"` }
GetSlowPostProtectionSettingRequest is used to retrieve the slow post protection settings for a configuration. Deprecated: this struct will be removed in a future release.
func (GetSlowPostProtectionSettingRequest) Validate ¶
func (v GetSlowPostProtectionSettingRequest) Validate() error
Validate validates a GetSlowPostProtectionSettingRequest.
type GetSlowPostProtectionSettingResponse ¶
type GetSlowPostProtectionSettingResponse struct { Action string `json:"action,omitempty"` SlowRateThreshold *SlowPostProtectionSettingSlowRateThreshold `json:"slowRateThreshold,omitempty"` DurationThreshold *SlowPostProtectionSettingDurationThreshold `json:"durationThreshold,omitempty"` }
GetSlowPostProtectionSettingResponse is returned from a call to GetSlowPostProtectionSetting. Deprecated: this struct will be removed in a future release.
type GetSlowPostProtectionSettingsRequest ¶
type GetSlowPostProtectionSettingsRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` Action string `json:"action"` SlowRateThreshold *SlowPostProtectionSettingSlowRateThreshold `json:"slowRateThreshold,omitempty"` DurationThreshold *SlowPostProtectionSettingDurationThreshold `json:"durationThreshold,omitempty"` }
GetSlowPostProtectionSettingsRequest is used to retrieve the slow post protection settings for a configuration.
func (GetSlowPostProtectionSettingsRequest) Validate ¶
func (v GetSlowPostProtectionSettingsRequest) Validate() error
Validate validates a GetSlowPostProtectionSettingsRequest. Deprecated: this method will be removed in a future release.
type GetSlowPostProtectionSettingsResponse ¶
type GetSlowPostProtectionSettingsResponse struct { Action string `json:"action,omitempty"` SlowRateThreshold *SlowPostProtectionSettingSlowRateThreshold `json:"slowRateThreshold,omitempty"` DurationThreshold *SlowPostProtectionSettingDurationThreshold `json:"durationThreshold,omitempty"` }
GetSlowPostProtectionSettingsResponse is returned from a call to GetSlowPostProtectionSettings.
type GetSlowPostProtectionsRequest ¶ added in v2.0.4
type GetSlowPostProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplySlowPostControls bool `json:"applySlowPostControls"` }
GetSlowPostProtectionsRequest is used to retrieve the slow post protecton setting for a policy. Deprecated: this struct will be removed in a future release.
func (GetSlowPostProtectionsRequest) Validate ¶ added in v2.0.4
func (v GetSlowPostProtectionsRequest) Validate() error
Validate validates a GetSlowPostProtectionsRequest.
type GetSlowPostProtectionsResponse ¶ added in v2.0.4
type GetSlowPostProtectionsResponse ProtectionsResponse
GetSlowPostProtectionsResponse is returned from a call to GetSlowPostProtections. Deprecated: this struct will be removed in a future release.
type GetThreatIntelRequest ¶ added in v2.6.0
type GetThreatIntelRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` }
GetThreatIntelRequest is used to retrieve the threat intel settings.
func (GetThreatIntelRequest) Validate ¶ added in v2.6.0
func (v GetThreatIntelRequest) Validate() error
Validate validates a GetAttackGroupConditionExceptionRequest.
type GetThreatIntelResponse ¶ added in v2.6.0
type GetThreatIntelResponse struct {
ThreatIntel string `json:"threatIntel,omitempty"`
}
GetThreatIntelResponse is returned from a call to GetThreatIntel.
type GetTuningRecommendationsRequest ¶ added in v2.8.1
type GetTuningRecommendationsRequest struct { ConfigID int Version int PolicyID string RulesetType RulesetType }
GetTuningRecommendationsRequest is used to retrieve tuning recommendations for a security policy.
func (GetTuningRecommendationsRequest) Validate ¶ added in v2.8.1
func (v GetTuningRecommendationsRequest) Validate() error
Validate validates a GetTuningRecommendationsRequest.
type GetTuningRecommendationsResponse ¶ added in v2.8.1
type GetTuningRecommendationsResponse struct { AttackGroupRecommendations []AttackGroupRecommendation `json:"attackGroupRecommendations,omitempty"` RuleRecommendations []RuleRecommendation `json:"ruleRecommendations,omitempty"` EvaluationPeriodStart time.Time `json:"evaluationPeriodStart,omitempty"` EvaluationPeriodEnd time.Time `json:"evaluationPeriodEnd,omitempty"` }
GetTuningRecommendationsResponse is returned from a call to GetTuningRecommendations.
type GetVersionNotesRequest ¶ added in v2.2.0
GetVersionNotesRequest is used to retrieve the version notes for a configuration version.
func (GetVersionNotesRequest) Validate ¶ added in v2.2.0
func (v GetVersionNotesRequest) Validate() error
Validate validates a GetVersionNotesRequest.
type GetVersionNotesResponse ¶ added in v2.2.0
type GetVersionNotesResponse struct {
Notes string `json:"notes"`
}
GetVersionNotesResponse is returned from a call to GetVersionNotes.
type GetWAFModeRequest ¶
type GetWAFModeRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
GetWAFModeRequest is used to retrieve the setting that determines this mode how rules will be kept up to date.
func (GetWAFModeRequest) Validate ¶
func (v GetWAFModeRequest) Validate() error
Validate validates a GetWAFModeRequest.
type GetWAFModeResponse ¶
type GetWAFModeResponse struct { Current string `json:"current,omitempty"` Mode string `json:"mode,omitempty"` Eval string `json:"eval,omitempty"` Evaluating string `json:"evaluating,omitempty"` Expires string `json:"expires,omitempty"` }
GetWAFModeResponse is returned from a call to GetWAFMode.
type GetWAFModesRequest ¶
type GetWAFModesRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
GetWAFModesRequest is used to retrieve the setting that determines this mode how rules will be kept up to date. Deprecated: this struct will be removed in a future release.
func (GetWAFModesRequest) Validate ¶
func (v GetWAFModesRequest) Validate() error
Validate validates a GetWAFModesRequest. Deprecated: this method will be removed in a future release.
type GetWAFModesResponse ¶
type GetWAFModesResponse struct { Current string `json:"current,omitempty"` Mode string `json:"mode,omitempty"` Eval string `json:"eval,omitempty"` Evaluating string `json:"evaluating,omitempty"` Expires string `json:"expires,omitempty"` }
GetWAFModesResponse is returned from a call to GetWAFModes. Deprecated: this struct will be removed in a future release.
type GetWAFProtectionRequest ¶
type GetWAFProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` }
GetWAFProtectionRequest is used to retrieve the WAF protection setting.
func (GetWAFProtectionRequest) Validate ¶
func (v GetWAFProtectionRequest) Validate() error
Validate validates a GetWAFProtectionRequest.
type GetWAFProtectionResponse ¶
type GetWAFProtectionResponse ProtectionsResponse
GetWAFProtectionResponse is returned from a call to GetWAFProtection.
type GetWAFProtectionsRequest ¶
type GetWAFProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` }
GetWAFProtectionsRequest is used to retrieve the WAF protection setting. Deprecated: this struct will be removed in a future release.
func (GetWAFProtectionsRequest) Validate ¶
func (v GetWAFProtectionsRequest) Validate() error
Validate validates a GetWAFProtectionsRequest.
type GetWAFProtectionsResponse ¶
type GetWAFProtectionsResponse ProtectionsResponse
GetWAFProtectionsResponse is returned from a call to GetWAFProtections. Deprecated: this struct will be removed in a future release.
type GetWAPBypassNetworkListsRequest ¶ added in v2.12.0
type GetWAPBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` }
GetWAPBypassNetworkListsRequest is used to list which network lists are used in the bypass network lists settings.
func (GetWAPBypassNetworkListsRequest) Validate ¶ added in v2.12.0
func (v GetWAPBypassNetworkListsRequest) Validate() error
Validate validates a GetWAPBypassNetworkListsRequest.
type GetWAPBypassNetworkListsResponse ¶ added in v2.12.0
type GetWAPBypassNetworkListsResponse struct {
NetworkLists []NetworkListsStruct `json:"networkLists"`
}
GetWAPBypassNetworkListsResponse is returned from a call to GetWAPBypassNetworkLists.
type GetWAPSelectedHostnamesRequest ¶ added in v2.6.0
type GetWAPSelectedHostnamesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` SecurityPolicyID string `json:"securityPolicyID"` }
GetWAPSelectedHostnamesRequest is used to retrieve the WAP selected hostnames and evaluated hostnames.
func (GetWAPSelectedHostnamesRequest) Validate ¶ added in v2.6.0
func (v GetWAPSelectedHostnamesRequest) Validate() error
Validate validates a GetWAPSelectedHostnamesRequest.
type GetWAPSelectedHostnamesResponse ¶ added in v2.6.0
type GetWAPSelectedHostnamesResponse struct { ProtectedHosts []string `json:"protectedHostnames,omitempty"` EvaluatedHosts []string `json:"evalHostnames,omitempty"` }
GetWAPSelectedHostnamesResponse is returned from a call to GetWAPSelectedHostnames.
type GroupData ¶ added in v2.12.0
type GroupData []struct { Group int `json:"group,omitempty"` GroupName string `json:"groupName,omitempty"` }
GroupData contains updates to attack groups
type HeaderCookieOrParamValuesattackgroup ¶ added in v2.2.0
type HeaderCookieOrParamValuesattackgroup []struct { Criteria []struct { Hostnames []string `json:"hostnames,omitempty"` Paths []string `json:"paths,omitempty"` Values []string `json:"values,omitempty"` } `json:"criteria"` ValueWildcard bool `json:"valueWildcard,omitempty"` Values []string `json:"values,omitempty"` }
HeaderCookieOrParamValuesattackgroup is returned as part of GetExportConfigurationResponse.
type Hostname ¶
type Hostname struct {
Hostname string `json:"hostname"`
}
Hostname describes a hostname that may be protected.
type HostnameCoverageMatchTargetBypassNetworkLists ¶ added in v2.2.0
type HostnameCoverageMatchTargetBypassNetworkLists []struct { ID string `json:"id"` Name string `json:"name"` }
HostnameCoverageMatchTargetBypassNetworkLists describes a network list included in the list of bypass network lists.
type HostnameCoverageMatchTargetEffectiveSecurityControls ¶ added in v2.2.0
type HostnameCoverageMatchTargetEffectiveSecurityControls struct { ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` }
HostnameCoverageMatchTargetEffectiveSecurityControls describes the effective security controls for a website target.
type Hostnames ¶
type Hostnames struct {
Hostnames string `json:"hostnames"`
}
Hostnames contains one or more hostnames.
type IPControlsLists ¶ added in v2.12.0
type IPControlsLists struct { AllowedIPNetworkLists IPNetworkListsList `json:"allowedIPNetworkLists"` BlockedIPNetworkLists IPNetworkListsList `json:"blockedIPNetworkLists"` }
IPControlsLists is used to define lists of allowed and blocked IP network lists.
type IPGeo ¶ added in v2.0.4
type IPGeo interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getipgeofirewall GetIPGeo(ctx context.Context, params GetIPGeoRequest) (*GetIPGeoResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putipgeofirewall UpdateIPGeo(ctx context.Context, params UpdateIPGeoRequest) (*UpdateIPGeoResponse, error) }
The IPGeo interface supports querying which network lists are used in the IP/Geo firewall settings, as well as updating the method and which network lists are used for IP/Geo firewall blocking.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#ipgeofirewall
type IPGeoFirewall ¶ added in v2.17.0
type IPGeoFirewall struct { Block string `json:"block"` GeoControls *IPGeoGeoControls `json:"geoControls,omitempty"` IPControls *IPGeoIPControls `json:"ipControls,omitempty"` }
IPGeoFirewall is used to describe an IP/Geo firewall.
type IPGeoGeoControls ¶ added in v2.17.0
type IPGeoGeoControls struct {
BlockedIPNetworkLists *IPGeoNetworkLists `json:"blockedIPNetworkLists,omitempty"`
}
IPGeoGeoControls is used to specify GEO network lists to be blocked.
type IPGeoIPControls ¶ added in v2.17.0
type IPGeoIPControls struct { AllowedIPNetworkLists *IPGeoNetworkLists `json:"allowedIPNetworkLists,omitempty"` BlockedIPNetworkLists *IPGeoNetworkLists `json:"blockedIPNetworkLists,omitempty"` }
IPGeoIPControls is used to specify IP or GEO network lists to be blocked or allowed.
type IPGeoNetworkLists ¶ added in v2.17.0
type IPGeoNetworkLists struct {
NetworkList []string `json:"networkList,omitempty"`
}
IPGeoNetworkLists is used to specify IP or GEO network lists to be blocked or allowed.
type IPGeoProtection ¶ added in v2.5.0
type IPGeoProtection interface { // GetIPGeoProtections retrieves the current IPGeo protection protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetIPGeoProtection instead. GetIPGeoProtections(ctx context.Context, params GetIPGeoProtectionsRequest) (*GetIPGeoProtectionsResponse, error) // GetIPGeoProtection retrieves the current IPGeo protection protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetIPGeoProtection(ctx context.Context, params GetIPGeoProtectionRequest) (*GetIPGeoProtectionResponse, error) // SetIPGeoProtection updates the IPGeo protection protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateIPGeoProtection(ctx context.Context, params UpdateIPGeoProtectionRequest) (*UpdateIPGeoProtectionResponse, error) }
The IPGeoProtection interface supports retrieving and updating IPGeo protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type IPNetworkListsList ¶ added in v2.12.0
type IPNetworkListsList struct {
NetworkList []string `json:"networkList"`
}
IPNetworkListsList is used to define a list of IP network lists.
type LoggingOverridesexp ¶ added in v2.2.0
type LoggingOverridesexp struct { AllowSampling bool `json:"allowSampling"` Cookies struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"cookies"` CustomHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"customHeaders"` Override bool `json:"override"` StandardHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"standardHeaders"` }
LoggingOverridesexp is returned as part of GetExportConfigurationResponse.
type Loggingexp ¶ added in v2.2.0
type Loggingexp struct { AllowSampling bool `json:"allowSampling"` Cookies struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"cookies"` CustomHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"customHeaders"` StandardHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"standardHeaders"` }
Loggingexp is returned as part of GetExportConfigurationResponse.
type MalwareContentTypes ¶ added in v2.16.0
type MalwareContentTypes interface { // GetMalwareContentTypes retrieves the available content types for malware protection. // // See: https://techdocs.akamai.com/application-security/reference/get-malware-policy-content-types GetMalwareContentTypes(ctx context.Context, params GetMalwareContentTypesRequest) (*GetMalwareContentTypesResponse, error) }
The MalwareContentTypes interface supports retrieving the malware protection content types for a configuration and version.
type MalwarePoliciesResponse ¶ added in v2.16.0
type MalwarePoliciesResponse struct {
MalwarePolicies []MalwarePolicyResponse
}
MalwarePoliciesResponse is returned from a call to GetMalwarePolicies.
type MalwarePolicy ¶ added in v2.16.0
type MalwarePolicy interface { // CreateMalwarePolicy creates a new malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/post-malware-policies CreateMalwarePolicy(ctx context.Context, params CreateMalwarePolicyRequest) (*MalwarePolicyResponse, error) // GetMalwarePolicy retrieves an existing malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/get-malware-policy GetMalwarePolicy(ctx context.Context, params GetMalwarePolicyRequest) (*MalwarePolicyResponse, error) // GetMalwarePolicies retrieves the existing malware protection policies for a configuration. // // See: https://techdocs.akamai.com/application-security/reference/get-malware-policies GetMalwarePolicies(ctx context.Context, params GetMalwarePoliciesRequest) (*MalwarePoliciesResponse, error) // UpdateMalwarePolicy modifies an existing malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/put-malware-policy UpdateMalwarePolicy(ctx context.Context, params UpdateMalwarePolicyRequest) (*MalwarePolicyResponse, error) // RemoveMalwarePolicy removes a malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/delete-malware-policy RemoveMalwarePolicy(ctx context.Context, params RemoveMalwarePolicyRequest) error }
The MalwarePolicy interface supports creating, retrieving, updating and removing malware protection policies.
type MalwarePolicyAction ¶ added in v2.16.0
type MalwarePolicyAction interface { // GetMalwarePolicyActions retrieves the actions for a specific malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/get-malware-policies-actions GetMalwarePolicyActions(ctx context.Context, params GetMalwarePolicyActionsRequest) (*GetMalwarePolicyActionsResponse, error) // UpdateMalwarePolicyAction modifies the actions for a specific malware protection policy. // // See: https://techdocs.akamai.com/application-security/reference/put-malware-policy-action UpdateMalwarePolicyAction(ctx context.Context, params UpdateMalwarePolicyActionRequest) (*UpdateMalwarePolicyActionResponse, error) // UpdateMalwarePolicyActions is for Akamai internal use only. UpdateMalwarePolicyActions(ctx context.Context, params UpdateMalwarePolicyActionsRequest) (*UpdateMalwarePolicyActionsResponse, error) }
The MalwarePolicyAction interface supports retrieving and modifying the action associated with a specified malware policy, or with all malware policies in a security policy.
type MalwarePolicyActionBody ¶ added in v2.16.0
type MalwarePolicyActionBody struct { MalwarePolicyID int `json:"id"` Action string `json:"action"` UnscannedAction string `json:"unscannedAction"` }
MalwarePolicyActionBody defines the actions for a specific malware policy.
type MalwarePolicyBody ¶ added in v2.16.0
type MalwarePolicyBody struct { MalwarePolicyID int `json:"id"` Name string `json:"name"` Description string `json:"description,omitempty"` Hostnames []string `json:"hostnames"` Paths []string `json:"paths"` ContentTypes []string `json:"contentTypes"` }
MalwarePolicyBody describes a malware policy.
type MalwarePolicyResponse ¶ added in v2.16.0
type MalwarePolicyResponse struct { MalwarePolicyID int `json:"id"` Name string `json:"name"` Description string `json:"description,omitempty"` Hostnames []string `json:"hostnames"` Paths []string `json:"paths"` ContentTypes []string `json:"contentTypes"` }
MalwarePolicyResponse is returned from a call to CreateMalwarePolicy
type MalwareProtection ¶ added in v2.16.0
type MalwareProtection interface { // GetMalwareProtection retrieves the current malware protection setting for a configuration and policy. // // See: https://techdocs.akamai.com/application-security/reference/get-policy-malware GetMalwareProtection(ctx context.Context, params GetMalwareProtectionRequest) (*GetMalwareProtectionResponse, error) // UpdateMalwareProtection updates the malware protection setting for a configuration and policy. // // See: https://techdocs.akamai.com/application-security/reference/put-policy-malware UpdateMalwareProtection(ctx context.Context, params UpdateMalwareProtectionRequest) (*UpdateMalwareProtectionResponse, error) }
The MalwareProtection interface supports retrieving and updating malware protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type MatchTarget ¶
type MatchTarget interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmatchtargets GetMatchTargets(ctx context.Context, params GetMatchTargetsRequest) (*GetMatchTargetsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmatchtargetid GetMatchTarget(ctx context.Context, params GetMatchTargetRequest) (*GetMatchTargetResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmatchtargetid CreateMatchTarget(ctx context.Context, params CreateMatchTargetRequest) (*CreateMatchTargetResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putmatchtargetid UpdateMatchTarget(ctx context.Context, params UpdateMatchTargetRequest) (*UpdateMatchTargetResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deletematchtargetid RemoveMatchTarget(ctx context.Context, params RemoveMatchTargetRequest) (*RemoveMatchTargetResponse, error) }
The MatchTarget interface supports creating, retrieving, updating and removing match targets.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#matchtarget
type MatchTargetItem ¶ added in v2.5.0
MatchTargetItem describes a match target and its sequence number.
type MatchTargetSequence ¶
type MatchTargetSequence interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmatchtargets GetMatchTargetSequence(ctx context.Context, params GetMatchTargetSequenceRequest) (*GetMatchTargetSequenceResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putsequence UpdateMatchTargetSequence(ctx context.Context, params UpdateMatchTargetSequenceRequest) (*UpdateMatchTargetSequenceResponse, error) }
The MatchTargetSequence interface supports querying and modifying the order of match targets.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#matchtargetorder
type NetworkLayerProtection ¶ added in v2.0.4
type NetworkLayerProtection interface { // GetNetworkLayerProtections retrieves the current network layer protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetNetworkLayerProtection instead. GetNetworkLayerProtections(ctx context.Context, params GetNetworkLayerProtectionsRequest) (*GetNetworkLayerProtectionsResponse, error) // GetNetworkLayerProtection retrieves the current network layer protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetNetworkLayerProtection(ctx context.Context, params GetNetworkLayerProtectionRequest) (*GetNetworkLayerProtectionResponse, error) // UpdateNetworkLayerProtection updates the network layer protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateNetworkLayerProtection(ctx context.Context, params UpdateNetworkLayerProtectionRequest) (*UpdateNetworkLayerProtectionResponse, error) // UpdateNetworkLayerProtection removes network layer protection for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections // Deprecated: this method will be removed in a future release. Use UpdateNetworkLayerProtection instead. RemoveNetworkLayerProtection(ctx context.Context, params RemoveNetworkLayerProtectionRequest) (*RemoveNetworkLayerProtectionResponse, error) }
The NetworkLayerProtection interface supports retrieving and updating network layer protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type NetworkListsStruct ¶ added in v2.12.0
NetworkListsStruct is used to define a network list.
type NetworkValue ¶
type NetworkValue string
NetworkValue is used to create an "enum" of possible Activation.Network values
type PenaltyBox ¶
type PenaltyBox interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getpenaltybox // Deprecated: this method will be removed in a future release. Use GetPenaltyBox instead. GetPenaltyBoxes(ctx context.Context, params GetPenaltyBoxesRequest) (*GetPenaltyBoxesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getpenaltybox GetPenaltyBox(ctx context.Context, params GetPenaltyBoxRequest) (*GetPenaltyBoxResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putpenaltybox UpdatePenaltyBox(ctx context.Context, params UpdatePenaltyBoxRequest) (*UpdatePenaltyBoxResponse, error) }
The PenaltyBox interface supports retrieving or modifying the penalty box settings for a specified security policy
https://developer.akamai.com/api/cloud_security/application_security/v1.html#penaltybox
type PenaltyBoxexp ¶ added in v2.2.0
type PenaltyBoxexp struct { Action string `json:"action"` PenaltyBoxProtection bool `json:"penaltyBoxProtection"` }
PenaltyBoxexp is returned as part of GetExportConfigurationResponse.
type Policies ¶
type Policies struct { HasRatePolicyWithAPIKey bool `json:"hasRatePolicyWithApiKey"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } }
Policies is used as part of a description of available security policies.
type PolicyProtections ¶ added in v2.0.4
type PolicyProtections interface { // GetPolicyProtections retrieves the current protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetPolicyProtections(ctx context.Context, params GetPolicyProtectionsRequest) (*PolicyProtectionsResponse, error) // UpdatePolicyProtections updates the protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdatePolicyProtections(ctx context.Context, params UpdatePolicyProtectionsRequest) (*PolicyProtectionsResponse, error) // RemovePolicyProtections removes protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections // Deprecated: this method will be removed in a future release. Use UpdatePolicyProtections instead. RemovePolicyProtections(ctx context.Context, params UpdatePolicyProtectionsRequest) (*PolicyProtectionsResponse, error) }
The PolicyProtections interface supports retrieving and updating protections for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type PolicyProtectionsResponse ¶ added in v2.8.1
type PolicyProtectionsResponse struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
PolicyProtectionsResponse is returned from GetPolicyProtections, UpdatePolicyProtections, and RemovePolicyProtections.
type ProtectionsResponse ¶ added in v2.16.0
type ProtectionsResponse struct { ApplyAPIConstraints bool `json:"applyApiConstraints,omitempty"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls,omitempty"` ApplyBotmanControls bool `json:"applyBotmanControls,omitempty"` ApplyMalwareControls bool `json:"applyMalwareControls,omitempty"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls,omitempty"` ApplyRateControls bool `json:"applyRateControls,omitempty"` ApplyReputationControls bool `json:"applyReputationControls,omitempty"` ApplySlowPostControls bool `json:"applySlowPostControls,omitempty"` }
ProtectionsResponse is returned from a call to GetAPIConstraintsProtection and similiar security policy protection requests.
type RatePoliciesHosts ¶ added in v2.14.0
type RatePoliciesHosts struct { Values *[]string `json:"values,omitempty"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` }
RatePoliciesHosts is used as part of a rate policy description.
type RatePoliciesPath ¶ added in v2.4.1
type RatePoliciesPath struct { PositiveMatch bool `json:"positiveMatch"` Values *RatePoliciesPathValues `json:"values,omitempty"` }
RatePoliciesPath is returned as part of GetExportConfigurationResponse.
type RatePoliciesPathValues ¶ added in v2.2.0
type RatePoliciesPathValues []string
RatePoliciesPathValues is returned as part of GetExportConfigurationResponse.
type RatePoliciesQueryParameters ¶ added in v2.2.0
type RatePoliciesQueryParameters []struct { Name string `json:"name"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` Values *RatePoliciesQueryParametersValues `json:"values,omitempty"` }
RatePoliciesQueryParameters is returned as part of GetExportConfigurationResponse.
type RatePoliciesQueryParametersValues ¶ added in v2.2.0
type RatePoliciesQueryParametersValues []string
RatePoliciesQueryParametersValues is returned as part of GetExportConfigurationResponse.
type RatePolicy ¶
type RatePolicy interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getratepolicies GetRatePolicies(ctx context.Context, params GetRatePoliciesRequest) (*GetRatePoliciesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getratepolicy GetRatePolicy(ctx context.Context, params GetRatePolicyRequest) (*GetRatePolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postratepolicies CreateRatePolicy(ctx context.Context, params CreateRatePolicyRequest) (*CreateRatePolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putratepolicy UpdateRatePolicy(ctx context.Context, params UpdateRatePolicyRequest) (*UpdateRatePolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deleteratepolicy RemoveRatePolicy(ctx context.Context, params RemoveRatePolicyRequest) (*RemoveRatePolicyResponse, error) }
The RatePolicy interface supports creating, retrieving, updating and removing rate policies.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#ratepolicy
type RatePolicyAPISelectors ¶ added in v2.2.0
type RatePolicyAPISelectors []struct { APIDefinitionID int `json:"apiDefinitionId,omitempty"` DefinedResources *bool `json:"definedResources,omitempty"` ResourceIds []int `json:"resourceIds"` UndefinedResources *bool `json:"undefinedResources,omitempty"` }
RatePolicyAPISelectors is used as part of a rate policy description.
type RatePolicyAction ¶
type RatePolicyAction interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getratepolicyactions GetRatePolicyActions(ctx context.Context, params GetRatePolicyActionsRequest) (*GetRatePolicyActionsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getratepolicyactions // Deprecated: this method will be removed in a future release. Use GetRatePolicyActions instead. GetRatePolicyAction(ctx context.Context, params GetRatePolicyActionRequest) (*GetRatePolicyActionResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putactionsperratepolicy UpdateRatePolicyAction(ctx context.Context, params UpdateRatePolicyActionRequest) (*UpdateRatePolicyActionResponse, error) }
The RatePolicyAction interface supports retrieving and modifying the action associated with a specified rate policy, or with all rate policies in a security policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#ratepolicyaction
type RatePolicyActionPost ¶
type RatePolicyActionPost struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
RatePolicyActionPost is used to describe actions that may be taken as part of a rate policy.
type RatePolicyActionsexp ¶ added in v2.2.0
type RatePolicyActionsexp []struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
RatePolicyActionsexp is returned as part of GetExportConfigurationResponse.
type RatePolicyBodyParameters ¶ added in v2.2.0
type RatePolicyBodyParameters []struct { Name string `json:"name,omitempty"` Values []string `json:"values,omitempty"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` }
RatePolicyBodyParameters is used as part of a rate policy description.
type RatePolicyFileExtensions ¶ added in v2.2.0
type RatePolicyFileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values,omitempty"` }
RatePolicyFileExtensions is used as part of a rate policy description.
type RatePolicyMatchOption ¶ added in v2.16.0
type RatePolicyMatchOption struct { PositiveMatch bool `json:"positiveMatch"` Type string `json:"type,omitempty"` Values []string `json:"values,omitempty"` }
RatePolicyMatchOption is used as part of a rate policy description.
type RatePolicyPath ¶ added in v2.2.0
type RatePolicyPath struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values,omitempty"` }
RatePolicyPath is used as part of a rate policy description.
type RatePolicyQueryParameters ¶ added in v2.2.0
type RatePolicyQueryParameters []struct { Name string `json:"name,omitempty"` Values []string `json:"values,omitempty"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` }
RatePolicyQueryParameters is used as part of a rate policy description.
type RateProtection ¶ added in v2.0.4
type RateProtection interface { // GetRateProtections retrieves the current rate protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetRateProtection instead. GetRateProtections(ctx context.Context, params GetRateProtectionsRequest) (*GetRateProtectionsResponse, error) // GetRateProtection retrieves the current rate protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetRateProtection(ctx context.Context, params GetRateProtectionRequest) (*GetRateProtectionResponse, error) // UpdateRateProtection updates the rate protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateRateProtection(ctx context.Context, params UpdateRateProtectionRequest) (*UpdateRateProtectionResponse, error) }
The RateProtection interface supports retrieving and updating rate protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type RemoveActivationsRequest ¶
type RemoveActivationsRequest struct { ActivationID int `json:"-"` Action string `json:"action"` Network string `json:"network"` Note string `json:"note"` NotificationEmails []string `json:"notificationEmails"` ActivationConfigs []struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` } `json:"activationConfigs"` }
RemoveActivationsRequest is used to request deactivation of one or more configurations.
type RemoveActivationsResponse ¶
type RemoveActivationsResponse struct { DispatchCount int `json:"dispatchCount"` ActivationID int `json:"activationId"` Action string `json:"action"` Status StatusValue `json:"status"` Network NetworkValue `json:"network"` Estimate string `json:"estimate"` CreatedBy string `json:"createdBy"` CreateDate time.Time `json:"createDate"` ActivationConfigs []struct { ConfigID int `json:"configId"` ConfigName string `json:"configName"` ConfigVersion int `json:"configVersion"` PreviousConfigVersion int `json:"previousConfigVersion"` } `json:"activationConfigs"` }
RemoveActivationsResponse is returned from a call to RemoveActivations.
type RemoveAdvancedSettingsEvasivePathMatchRequest ¶ added in v2.9.0
type RemoveAdvancedSettingsEvasivePathMatchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` EnablePathMatch bool `json:"enablePathMatch"` }
RemoveAdvancedSettingsEvasivePathMatchRequest is used to clear the EvasivePathMatch setting
func (RemoveAdvancedSettingsEvasivePathMatchRequest) Validate ¶ added in v2.9.0
func (v RemoveAdvancedSettingsEvasivePathMatchRequest) Validate() error
Validate validates UpdateAdvancedSettingsEvasivePathMatchRequest
type RemoveAdvancedSettingsEvasivePathMatchResponse ¶ added in v2.9.0
type RemoveAdvancedSettingsEvasivePathMatchResponse struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` EnablePathMatch bool `json:"enablePathMatch"` }
RemoveAdvancedSettingsEvasivePathMatchResponse returns the result of clearing the EvasivePathMatch setting
type RemoveAdvancedSettingsLoggingRequest ¶ added in v2.2.0
type RemoveAdvancedSettingsLoggingRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Override bool `json:"override"` AllowSampling bool `json:"allowSampling"` }
RemoveAdvancedSettingsLoggingRequest is used to disable HTTP header logging for a configuration or policy.
func (RemoveAdvancedSettingsLoggingRequest) Validate ¶ added in v2.2.0
func (v RemoveAdvancedSettingsLoggingRequest) Validate() error
Validate validates a RemoveAdvancedSettingsLoggingRequest.
type RemoveAdvancedSettingsLoggingResponse ¶ added in v2.2.0
type RemoveAdvancedSettingsLoggingResponse struct { Override bool `json:"override"` AllowSampling bool `json:"allowSampling"` Cookies struct { Type string `json:"type"` } `json:"cookies"` CustomHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"customHeaders"` StandardHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"standardHeaders"` }
RemoveAdvancedSettingsLoggingResponse is returned from a call to RemoveAdvancedSettingsLogging.
type RemoveAdvancedSettingsPrefetchRequest ¶ added in v2.2.0
type RemoveAdvancedSettingsPrefetchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Action string `json:"action"` }
RemoveAdvancedSettingsPrefetchRequest is used to remove the prefetch request settings.
type RemoveAdvancedSettingsPrefetchResponse ¶ added in v2.2.0
type RemoveAdvancedSettingsPrefetchResponse struct {
Action string `json:"action"`
}
RemoveAdvancedSettingsPrefetchResponse is returned from a call to RemoveAdvancedSettingsPrefetch.
type RemoveApiRequestConstraintsRequest ¶ added in v2.2.0
type RemoveApiRequestConstraintsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApiID int `json:"-"` Action string `json:"action"` }
RemoveApiRequestConstraintsRequest is used to remove an API request constraint's action.
func (RemoveApiRequestConstraintsRequest) Validate ¶ added in v2.2.0
func (v RemoveApiRequestConstraintsRequest) Validate() error
Validate validates a RemoveApiRequestConstraintsRequest.
type RemoveApiRequestConstraintsResponse ¶ added in v2.2.0
type RemoveApiRequestConstraintsResponse struct {
Action string `json:"action"`
}
RemoveApiRequestConstraintsResponse is returned from a call to RemoveApiRequestConstraints.
type RemoveBypassNetworkListsRequest ¶ added in v2.2.0
type RemoveBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` NetworkLists []string `json:"networkLists"` }
RemoveBypassNetworkListsRequest is used to modify which network lists are used in the bypass network lists settings. Deprecated: this struct will be removed in a future release.
func (RemoveBypassNetworkListsRequest) Validate ¶ added in v2.2.0
func (v RemoveBypassNetworkListsRequest) Validate() error
Validate validates a RemoveBypassNetworkListsRequest. Deprecated: this method will be removed in a future release.
type RemoveBypassNetworkListsResponse ¶ added in v2.2.0
type RemoveBypassNetworkListsResponse struct {
NetworkLists []string `json:"networkLists"`
}
RemoveBypassNetworkListsResponse is returned from a call to RemoveBypassNetworkLists. Deprecated: this struct will be removed in a future release.
type RemoveConfigurationRequest ¶ added in v2.2.0
type RemoveConfigurationRequest struct {
ConfigID int `json:"configId"`
}
RemoveConfigurationRequest is used to remove an existing security configuration.
func (RemoveConfigurationRequest) Validate ¶ added in v2.2.0
func (v RemoveConfigurationRequest) Validate() error
Validate validates a RemoveConfigurationRequest.
type RemoveConfigurationResponse ¶ added in v2.2.0
type RemoveConfigurationResponse struct {
Empty int `json:"-"`
}
RemoveConfigurationResponse is returned from a call to RemoveConfiguration.
type RemoveConfigurationVersionCloneRequest ¶ added in v2.2.0
type RemoveConfigurationVersionCloneRequest struct { ConfigID int `json:"-"` Version int `json:"-"` }
RemoveConfigurationVersionCloneRequest is used to remove an existing configuration version.
func (RemoveConfigurationVersionCloneRequest) Validate ¶ added in v2.2.0
func (v RemoveConfigurationVersionCloneRequest) Validate() error
Validate validates a RemoveConfigurationCloneRequest.
type RemoveConfigurationVersionCloneResponse ¶ added in v2.2.0
type RemoveConfigurationVersionCloneResponse struct {
Empty string `json:"-"`
}
RemoveConfigurationVersionCloneResponse is returned from a call to RemoveConfigurationVersionClone.
type RemoveCustomDenyRequest ¶ added in v2.2.0
type RemoveCustomDenyRequest struct { ConfigID int `json:"-"` Version int `json:"-"` ID string `json:"id,omitempty"` }
RemoveCustomDenyRequest is used to remove an existing custom deny action.
func (RemoveCustomDenyRequest) Validate ¶ added in v2.2.0
func (v RemoveCustomDenyRequest) Validate() error
Validate validates a RemoveCustomDenyRequest.
type RemoveCustomDenyResponse ¶ added in v2.2.0
type RemoveCustomDenyResponse struct {
Empty string `json:"-"`
}
RemoveCustomDenyResponse is returned from a call to RemoveCustomDeny.
type RemoveCustomRuleRequest ¶
type RemoveCustomRuleRequest struct { ConfigID int `json:"configid,omitempty"` ID int `json:"id,omitempty"` }
RemoveCustomRuleRequest is used to remove a custom rule.
func (RemoveCustomRuleRequest) Validate ¶
func (v RemoveCustomRuleRequest) Validate() error
Validate validates a RemoveCustomRuleRequest.
type RemoveCustomRuleResponse ¶
type RemoveCustomRuleResponse UpdateCustomRuleResponse
RemoveCustomRuleResponse is returned from a call to RemoveCustomRule.
type RemoveEvalHostRequest ¶ added in v2.2.0
type RemoveEvalHostRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostnames []string `json:"hostnames"` }
RemoveEvalHostRequest is used to remove the evaluation hostnames for a configuration.
func (RemoveEvalHostRequest) Validate ¶ added in v2.2.0
func (v RemoveEvalHostRequest) Validate() error
Validate validates a RemoveEvalHostRequest.
type RemoveEvalHostResponse ¶ added in v2.2.0
type RemoveEvalHostResponse struct {
Hostnames []string `json:"hostnames"`
}
RemoveEvalHostResponse is returned from a call to RemoveEvalHost.
type RemoveEvalRequest ¶ added in v2.0.4
type RemoveEvalRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"-"` Mode string `json:"-"` Eval string `json:"eval"` }
RemoveEvalRequest is used to remove an evaluation mode setting.
func (RemoveEvalRequest) Validate ¶ added in v2.0.4
func (v RemoveEvalRequest) Validate() error
Validate validates a RemoveEvalRequest.
type RemoveEvalResponse ¶ added in v2.0.4
type RemoveEvalResponse struct { Current string `json:"current"` Eval string `json:"eval"` Mode string `json:"mode"` }
RemoveEvalResponse is returned from a call to RemoveEval.
type RemoveMalwarePolicyRequest ¶ added in v2.16.0
RemoveMalwarePolicyRequest is used to remove a malware policy.
func (RemoveMalwarePolicyRequest) Validate ¶ added in v2.16.0
func (v RemoveMalwarePolicyRequest) Validate() error
Validate validates a RemoveMalwarePolicyRequest.
type RemoveMatchTargetRequest ¶
type RemoveMatchTargetRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` TargetID int `json:"targetId"` }
RemoveMatchTargetRequest is used to remove a match target.
func (RemoveMatchTargetRequest) Validate ¶
func (v RemoveMatchTargetRequest) Validate() error
Validate validates a RemoveMatchTargetRequest.
type RemoveMatchTargetResponse ¶
type RemoveMatchTargetResponse struct { Type string `json:"type"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` DefaultFile string `json:"defaultFile"` Hostnames []string `json:"hostnames"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch bool `json:"isNegativePathMatch"` FilePaths []string `json:"filePaths"` FileExtensions []string `json:"fileExtensions"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"sequence"` TargetID int `json:"targetId"` BypassNetworkLists []struct { Name string `json:"name"` ID string `json:"id"` } `json:"bypassNetworkLists"` }
RemoveMatchTargetResponse is returned from a call to RemoveMatchTarget.
type RemoveNetworkLayerProtectionRequest ¶ added in v2.0.4
type RemoveNetworkLayerProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
RemoveNetworkLayerProtectionRequest is used to remove the network layer protection setting. Deprecated: this struct will be removed in a future release.
func (RemoveNetworkLayerProtectionRequest) Validate ¶ added in v2.0.4
func (v RemoveNetworkLayerProtectionRequest) Validate() error
Validate validates a RemoveNetworkLayerProtectionRequest.
type RemoveNetworkLayerProtectionResponse ¶ added in v2.0.4
type RemoveNetworkLayerProtectionResponse ProtectionsResponse
RemoveNetworkLayerProtectionResponse is returned from a call to RemoveNetworkLayerProtection. Deprecated: this struct will be removed in a future release.
type RemovePolicyProtectionsRequest ¶ added in v2.0.4
type RemovePolicyProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
RemovePolicyProtectionsRequest is used to remove the policy protection setting. Deprecated: this struct will be removed in a future release.
func (RemovePolicyProtectionsRequest) Validate ¶ added in v2.0.4
func (v RemovePolicyProtectionsRequest) Validate() error
Validate validates a RemovePolicyProtectionsRequest.
type RemoveRatePolicyRequest ¶
type RemoveRatePolicyRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` RatePolicyID int `json:"ratePolicyId"` }
RemoveRatePolicyRequest is used to remove a rate policy.
func (RemoveRatePolicyRequest) Validate ¶
func (v RemoveRatePolicyRequest) Validate() error
Validate validates a RemoveRatePolicyRequest.
type RemoveRatePolicyResponse ¶
type RemoveRatePolicyResponse struct { ID int `json:"id"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` MatchType string `json:"matchType"` Type string `json:"type"` Name string `json:"name"` Description string `json:"description"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"path"` PathMatchType string `json:"pathMatchType"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"fileExtensions"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames"` AdditionalMatchOptions []RatePolicyMatchOption `json:"additionalMatchOptions,omitempty"` QueryParameters []struct { Name string `json:"name"` Values []string `json:"values"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` } `json:"queryParameters"` CreateDate string `json:"-"` UpdateDate string `json:"-"` Used json.RawMessage `json:"used"` }
RemoveRatePolicyResponse is returned from a call to RemoveRatePolicy.
type RemoveReputationAnalysisRequest ¶ added in v2.2.0
type RemoveReputationAnalysisRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ForwardToHTTPHeader bool `json:"forwardToHTTPHeader"` }
RemoveReputationAnalysisRequest is used to remove the reputation analysis settings for a security policy.
func (RemoveReputationAnalysisRequest) Validate ¶ added in v2.2.0
func (v RemoveReputationAnalysisRequest) Validate() error
Validate validates a RemoveReputationAnalysisRequest.
type RemoveReputationAnalysisResponse ¶ added in v2.2.0
type RemoveReputationAnalysisResponse struct { ForwardToHTTPHeader bool `json:"forwardToHTTPHeader"` }
RemoveReputationAnalysisResponse is returned from a call to RemoveReputationAnalysis.
type RemoveReputationProfileRequest ¶ added in v2.0.4
type RemoveReputationProfileRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` ReputationProfileId int `json:"-"` }
RemoveReputationProfileRequest is used to remove a reputation profile.
func (RemoveReputationProfileRequest) Validate ¶ added in v2.0.4
func (v RemoveReputationProfileRequest) Validate() error
Validate validates a RemoveReputationProfileRequest.
type RemoveReputationProfileResponse ¶ added in v2.0.4
type RemoveReputationProfileResponse struct { ID int `json:"id"` PolicyID int `json:"policyId"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` MatchType string `json:"matchType"` Type string `json:"type"` Name string `json:"name"` Description string `json:"description"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"path"` PathMatchType string `json:"pathMatchType"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"fileExtensions"` Hostnames []string `json:"hostNames"` AdditionalMatchOptions []struct { PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Values []string `json:"values"` } `json:"additionalMatchOptions"` QueryParameters []struct { Name string `json:"name"` Values []string `json:"values"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` } `json:"queryParameters"` CreateDate string `json:"createDate"` UpdateDate string `json:"updateDate"` Used bool `json:"used"` }
RemoveReputationProfileResponse is returned from a call to RemoveReputationProfile.
type RemoveReputationProtectionRequest ¶ added in v2.0.4
type RemoveReputationProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyReputationControls bool `json:"applyReputationControls"` }
RemoveReputationProtectionRequest is used to remove the reputation protection settings. Deprecated: this struct will be removed in a future release.
func (RemoveReputationProtectionRequest) Validate ¶ added in v2.0.4
func (v RemoveReputationProtectionRequest) Validate() error
Validate validates a RemoveReputationProtectionRequest.
type RemoveReputationProtectionResponse ¶ added in v2.0.4
type RemoveReputationProtectionResponse ProtectionsResponse
RemoveReputationProtectionResponse is returned from a call to RemoveReputationProtection. Deprecated: this struct will be removed in a future release.
type RemoveSecurityPolicyRequest ¶ added in v2.0.4
type RemoveSecurityPolicyRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` }
RemoveSecurityPolicyRequest is used to remove a security policy.
func (RemoveSecurityPolicyRequest) Validate ¶ added in v2.0.4
func (v RemoveSecurityPolicyRequest) Validate() error
Validate validates a RemoveSecurityPolicyRequest.
type RemoveSecurityPolicyResponse ¶ added in v2.0.4
type RemoveSecurityPolicyResponse struct { ConfigID int `json:"configId"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } `json:"policySecurityControls"` Version int `json:"version"` }
RemoveSecurityPolicyResponse is returned from a call to RemoveSecurityPolicy.
type RemoveSiemSettingsRequest ¶ added in v2.2.0
type RemoveSiemSettingsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` EnableForAllPolicies bool `json:"-"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"-"` SiemDefinitionID int `json:"-"` FirewallPolicyIds []string `json:"-"` }
RemoveSiemSettingsRequest is used to remove the SIEM settings for a configuration. Deprecated: this struct will be removed in a future release.
func (RemoveSiemSettingsRequest) Validate ¶ added in v2.2.0
func (v RemoveSiemSettingsRequest) Validate() error
Validate validates a RemoveSiemSettingsRequest. Deprecated: this method will be removed in a future release.
type RemoveSiemSettingsResponse ¶ added in v2.2.0
type RemoveSiemSettingsResponse struct { EnableForAllPolicies bool `json:"enableForAllPolicies"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents"` SiemDefinitionID int `json:"siemDefinitionId"` FirewallPolicyIds []string `json:"firewallPolicyIds"` }
RemoveSiemSettingsResponse is returned from a call to RemoveSiemSettings. Deprecated: this struct will be removed in a future release.
type RemoveWAPBypassNetworkListsRequest ¶ added in v2.12.0
type RemoveWAPBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` NetworkLists []string `json:"networkLists"` }
RemoveWAPBypassNetworkListsRequest is used to modify which network lists are used in the bypass network lists settings. Deprecated: this struct will be removed in a future release.
func (RemoveWAPBypassNetworkListsRequest) Validate ¶ added in v2.12.0
func (v RemoveWAPBypassNetworkListsRequest) Validate() error
Validate validates a RemoveWAPBypassNetworkListsRequest. Deprecated: this method will be removed in a future release.
type RemoveWAPBypassNetworkListsResponse ¶ added in v2.12.0
type RemoveWAPBypassNetworkListsResponse struct {
NetworkLists []string `json:"networkLists"`
}
RemoveWAPBypassNetworkListsResponse is returned from a call to RemoveWAPBypassNetworkLists. Deprecated: this struct will be removed in a future release.
type ReputationAnalysis ¶ added in v2.2.0
type ReputationAnalysis interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getreputationanalysis GetReputationAnalysis(ctx context.Context, params GetReputationAnalysisRequest) (*GetReputationAnalysisResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putreputationanalysis UpdateReputationAnalysis(ctx context.Context, params UpdateReputationAnalysisRequest) (*UpdateReputationAnalysisResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putreputationanalysis RemoveReputationAnalysis(ctx context.Context, params RemoveReputationAnalysisRequest) (*RemoveReputationAnalysisResponse, error) }
The ReputationAnalysis interface supports retrieving and modifying the reputation analysis settings for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#reputationanalysis
type ReputationProfile ¶ added in v2.0.4
type ReputationProfile interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getreputationprofiles GetReputationProfiles(ctx context.Context, params GetReputationProfilesRequest) (*GetReputationProfilesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getreputationprofile GetReputationProfile(ctx context.Context, params GetReputationProfileRequest) (*GetReputationProfileResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postreputationprofiles CreateReputationProfile(ctx context.Context, params CreateReputationProfileRequest) (*CreateReputationProfileResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putreputationprofile UpdateReputationProfile(ctx context.Context, params UpdateReputationProfileRequest) (*UpdateReputationProfileResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deletereputationprofile RemoveReputationProfile(ctx context.Context, params RemoveReputationProfileRequest) (*RemoveReputationProfileResponse, error) }
The ReputationProfile interface supports creating, retrieving, modifying and removing reputation profiles for a specific security configuration version.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#reputationprofile
type ReputationProfileAction ¶ added in v2.0.4
type ReputationProfileAction interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getreputationprofileactions GetReputationProfileActions(ctx context.Context, params GetReputationProfileActionsRequest) (*GetReputationProfileActionsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getreputationprofileaction GetReputationProfileAction(ctx context.Context, params GetReputationProfileActionRequest) (*GetReputationProfileActionResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putreputationprofileaction UpdateReputationProfileAction(ctx context.Context, params UpdateReputationProfileActionRequest) (*UpdateReputationProfileActionResponse, error) }
The ReputationProfileAction interface supports retrieving and modifying the action associated with a specified reputation profile, or with all reputation profiles in a security policy.
type ReputationProfileActionPost ¶ added in v2.0.4
type ReputationProfileActionPost struct {
Action string `json:"action"`
}
ReputationProfileActionPost is currently unused.
type ReputationProfileActionsexp ¶ added in v2.2.0
ReputationProfileActionsexp is returned as part of GetExportConfigurationResponse.
type ReputationProfileCondition ¶ added in v2.4.1
type ReputationProfileCondition struct { AtomicConditions []struct { CheckIps *json.RawMessage `json:"checkIps,omitempty"` ClassName string `json:"className,omitempty"` Index int `json:"index,omitempty"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` Value []string `json:"value,omitempty"` Name *json.RawMessage `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` NameWildcard *json.RawMessage `json:"nameWildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard *json.RawMessage `json:"valueWildcard,omitempty"` Host []string `json:"host,omitempty"` } `json:"atomicConditions,omitempty"` PositiveMatch *json.RawMessage `json:"positiveMatch,omitempty"` }
ReputationProfileCondition is used as part of a reputation profile description.
type ReputationProtection ¶ added in v2.0.4
type ReputationProtection interface { // GetReputationProtections retrieves the current reputation protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetReputationProtection instead. GetReputationProtections(ctx context.Context, params GetReputationProtectionsRequest) (*GetReputationProtectionsResponse, error) // GetReputationProtection retrieves the current reputation protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetReputationProtection(ctx context.Context, params GetReputationProtectionRequest) (*GetReputationProtectionResponse, error) // UpdateReputationProtection updates the reputation protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateReputationProtection(ctx context.Context, params UpdateReputationProtectionRequest) (*UpdateReputationProtectionResponse, error) // RemoveReputationProtection removes reputation protection for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections // Deprecated: this method will be removed in a future release. Use UpdateReputationProtection instead. RemoveReputationProtection(ctx context.Context, params RemoveReputationProtectionRequest) (*RemoveReputationProtectionResponse, error) }
The ReputationProtection interface supports retrieving and updating reputation protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type Rule ¶ added in v2.5.0
type Rule interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getrules GetRules(ctx context.Context, params GetRulesRequest) (*GetRulesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getruleaction // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getruleconditionexception GetRule(ctx context.Context, params GetRuleRequest) (*GetRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putruleaction UpdateRule(ctx context.Context, params UpdateRuleRequest) (*UpdateRuleResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putruleconditionexception UpdateRuleConditionException(ctx context.Context, params UpdateConditionExceptionRequest) (*UpdateConditionExceptionResponse, error) }
The Rule interface supports retrieving and modifying the rules in a policy together with their actions, conditions and exceptions, or the action, condition and exceptions of a specific rule.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#rule
type RuleConditionException ¶ added in v2.0.4
type RuleConditionException struct { Conditions *RuleConditions `json:"conditions,omitempty"` Exception *RuleException `json:"exception,omitempty"` AdvancedExceptionsList *AdvancedExceptions `json:"advancedExceptions,omitempty"` }
RuleConditionException is used to describe the conditions and exceptions for a rule.
type RuleConditions ¶ added in v2.2.0
type RuleConditions []struct { Type string `json:"type,omitempty"` Extensions []string `json:"extensions,omitempty"` Filenames []string `json:"filenames,omitempty"` Hosts []string `json:"hosts,omitempty"` Ips []string `json:"ips,omitempty"` Methods []string `json:"methods,omitempty"` Paths []string `json:"paths,omitempty"` Header string `json:"header,omitempty"` CaseSensitive bool `json:"caseSensitive,omitempty"` Name string `json:"name,omitempty"` NameCase bool `json:"nameCase,omitempty"` PositiveMatch bool `json:"positiveMatch"` Value string `json:"value,omitempty"` Wildcard bool `json:"wildcard,omitempty"` ValueCase bool `json:"valueCase,omitempty"` ValueWildcard bool `json:"valueWildcard,omitempty"` UseHeaders bool `json:"useHeaders,omitempty"` }
RuleConditions is used to describe the conditions for a rule.
type RuleException ¶ added in v2.2.0
type RuleException struct { AnyHeaderCookieOrParam []string `json:"anyHeaderCookieOrParam,omitempty"` HeaderCookieOrParamValues []string `json:"headerCookieOrParamValues,omitempty"` SpecificHeaderCookieOrParamNameValue *SpecificHeaderCookieOrParamNameValuePtr `json:"specificHeaderCookieOrParamNameValue,omitempty"` SpecificHeaderCookieOrParamNames *SpecificHeaderCookieOrParamNamesPtr `json:"specificHeaderCookieOrParamNames,omitempty"` SpecificHeaderCookieOrParamPrefix *SpecificHeaderCookieOrParamPrefixPtr `json:"specificHeaderCookieOrParamPrefix,omitempty"` SpecificHeaderCookieParamXMLOrJSONNames *SpecificHeaderCookieParamXMLOrJSONNames `json:"specificHeaderCookieParamXmlOrJsonNames,omitempty"` }
RuleException is used to describe the exceptions for a rule.
type RuleRecommendation ¶ added in v2.16.0
type RuleRecommendation struct { Description string `json:"description,omitempty"` Evidence *Evidences `json:"evidences,omitempty"` Exception *AttackGroupException `json:"exception,omitempty"` RuleId int `json:"ruleId,omitempty"` }
RuleRecommendation is used to describe a recommendation for a rule.
type RuleUpgrade ¶ added in v2.0.4
type RuleUpgrade interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getupgradedetails GetRuleUpgrade(ctx context.Context, params GetRuleUpgradeRequest) (*GetRuleUpgradeResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putrules UpdateRuleUpgrade(ctx context.Context, params UpdateRuleUpgradeRequest) (*UpdateRuleUpgradeResponse, error) }
The RuleUpgrade interface supports verifying changes in Kona rule sets, and upgrading to the latest rules.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#upgrade
type RulesetUpdateData ¶ added in v2.12.0
type RulesetUpdateData struct { DeletedRules *RuleData `json:"deletedRules,omitempty"` NewRules *RuleData `json:"newRules,omitempty"` UpdatedRules *RuleData `json:"updatedRules,omitempty"` DeletedAttackGroups *GroupData `json:"deletedAttackGroups,omitempty"` UpdatedAttackGroups *GroupData `json:"updatedAttackGroups,omitempty"` NewAttackGroups *GroupData `json:"newAttackGroups,omitempty"` }
RulesetUpdateData is used to report all updates to rules and attack groups in the ruleset.
type RulesetsRules ¶ added in v2.3.0
type RulesetsRules []struct { ID int `json:"id"` InspectRequestBody bool `json:"inspectRequestBody"` InspectResponseBody bool `json:"inspectResponseBody"` Outdated bool `json:"outdated"` RuleVersion int `json:"ruleVersion"` Score int `json:"score"` Tag string `json:"tag"` Title string `json:"title"` AttackGroups []string `json:"attackGroups,omitempty"` }
RulesetsRules is returned as part of GetExportConfigurationResponse.
type SecurityPoliciesPenaltyBox ¶ added in v2.3.0
type SecurityPoliciesPenaltyBox struct { Action string `json:"action,omitempty"` PenaltyBoxProtection bool `json:"penaltyBoxProtection,omitempty"` }
SecurityPoliciesPenaltyBox is returned as part of GetExportConfigurationResponse.
type SecurityPoliciesRatePolicyActions ¶ added in v2.3.0
type SecurityPoliciesRatePolicyActions []struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
SecurityPoliciesRatePolicyActions is returned as part of GetExportConfigurationResponse.
type SecurityPolicy ¶
type SecurityPolicy interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsecuritypolicies GetSecurityPolicies(ctx context.Context, params GetSecurityPoliciesRequest) (*GetSecurityPoliciesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsecuritypolicy GetSecurityPolicy(ctx context.Context, params GetSecurityPolicyRequest) (*GetSecurityPolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postsecuritypolicies CreateSecurityPolicy(ctx context.Context, params CreateSecurityPolicyRequest) (*CreateSecurityPolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putsecuritypolicy UpdateSecurityPolicy(ctx context.Context, params UpdateSecurityPolicyRequest) (*UpdateSecurityPolicyResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#deletesecuritypolicy RemoveSecurityPolicy(ctx context.Context, params RemoveSecurityPolicyRequest) (*RemoveSecurityPolicyResponse, error) }
The SecurityPolicy interface supports creating, retrieving, modifying and removing security policies.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#securitypolicy
type SecurityPolicyClone ¶
type SecurityPolicyClone interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsecuritypolicies GetSecurityPolicyClones(ctx context.Context, params GetSecurityPolicyClonesRequest) (*GetSecurityPolicyClonesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsecuritypolicies GetSecurityPolicyClone(ctx context.Context, params GetSecurityPolicyCloneRequest) (*GetSecurityPolicyCloneResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#postsecuritypolicies CreateSecurityPolicyClone(ctx context.Context, params CreateSecurityPolicyCloneRequest) (*CreateSecurityPolicyCloneResponse, error) }
The SecurityPolicyClone interface supports cloning an existing security policy and retrieving existing security policies.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#securitypolicyclone
type SecurityPolicyCloneResponse ¶
type SecurityPolicyCloneResponse struct { ConfigID int `json:"configId"` Policies []Policies `json:"policies"` Version int `json:"version"` }
SecurityPolicyCloneResponse is currently unused.
type SelectableHostnames ¶
type SelectableHostnames interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getselectablehostnames GetSelectableHostnames(ctx context.Context, params GetSelectableHostnamesRequest) (*GetSelectableHostnamesResponse, error) }
The SelectableHostnames interface supports retrieving the hostnames that a given configuration version has the ability to protect. Hostnames may show as error hosts when they aren’t currently available. for example, when a contract expires.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#selectablehostnames
type SelectedHostname ¶
type SelectedHostname interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getselectedhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetSelectedHostnames(ctx context.Context, params GetSelectedHostnamesRequest) (*GetSelectedHostnamesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getselectedhostnames // Deprecated: this method will be removed in a future release. Use the GetWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. GetSelectedHostname(ctx context.Context, params GetSelectedHostnameRequest) (*GetSelectedHostnameResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putselectedhostnames // Deprecated: this method will be removed in a future release. Use the UpdateWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. UpdateSelectedHostname(ctx context.Context, params UpdateSelectedHostnameRequest) (*UpdateSelectedHostnameResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putselectedhostnames // Deprecated: this method will be removed in a future release. Use the UpdateWAPSelectedHostnames method of the WAPSelectedHostnames interface instead. UpdateSelectedHostnames(ctx context.Context, params UpdateSelectedHostnamesRequest) (*UpdateSelectedHostnamesResponse, error) }
The SelectedHostname interface supports retrieving and modifying the list of hostnames protected under a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#selectedhostnames Deprecated: this interface will be removed in a future release. Use the WAPSelectedHostnames interface instead.
type SiemDefinitions ¶ added in v2.2.0
type SiemDefinitions interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsiemversions GetSiemDefinitions(ctx context.Context, params GetSiemDefinitionsRequest) (*GetSiemDefinitionsResponse, error) }
The SiemDefinitions interface supports retrieving the available SIEM versions.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#siem
type SiemSettings ¶ added in v2.2.0
type SiemSettings interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getsiemsettings GetSiemSettings(ctx context.Context, params GetSiemSettingsRequest) (*GetSiemSettingsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putsiemsettings UpdateSiemSettings(ctx context.Context, params UpdateSiemSettingsRequest) (*UpdateSiemSettingsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putsiemsettings // Deprecated: this method will be removed in a future release. RemoveSiemSettings(ctx context.Context, params RemoveSiemSettingsRequest) (*RemoveSiemSettingsResponse, error) }
The SiemSettings interface supports retrieving, modifying and removing the SIEM settings for a configuration.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#siem
type Siemexp ¶ added in v2.2.0
type Siemexp struct { EnableForAllPolicies bool `json:"enableForAllPolicies,omitempty"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents,omitempty"` FirewallPolicyIds []string `json:"firewallPolicyIds,omitempty"` SiemDefinitionID int `json:"siemDefinitionId,omitempty"` }
Siemexp is returned as part of GetExportConfigurationResponse.
type SlowPostProtection ¶ added in v2.0.4
type SlowPostProtection interface { // GetSlowPostProtections retrieves the current SLOW post protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetSlowPostProtection instead. GetSlowPostProtections(ctx context.Context, params GetSlowPostProtectionsRequest) (*GetSlowPostProtectionsResponse, error) // GetSlowPostProtection retrieves the current SLOW post protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetSlowPostProtection(ctx context.Context, params GetSlowPostProtectionRequest) (*GetSlowPostProtectionResponse, error) // UpdateSlowPostProtection updates the SLOW post protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateSlowPostProtection(ctx context.Context, params UpdateSlowPostProtectionRequest) (*UpdateSlowPostProtectionResponse, error) }
The SlowPostProtection interface supports retrieving and updating slow post protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#slowpostprotection
type SlowPostProtectionSetting ¶
type SlowPostProtectionSetting interface { // GetSlowPostProtectionSettings retrieves the current SLOW post protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getslowpostprotectionsettings GetSlowPostProtectionSettings(ctx context.Context, params GetSlowPostProtectionSettingsRequest) (*GetSlowPostProtectionSettingsResponse, error) // GetSlowPostProtectionSetting retrieves the current SLOW post protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getslowpostprotectionsettings // Deprecated: this method will be removed in a future release. Use GetSlowPostProtectionSettings instead. GetSlowPostProtectionSetting(ctx context.Context, params GetSlowPostProtectionSettingRequest) (*GetSlowPostProtectionSettingResponse, error) // UpdateSlowPostProtectionSettings updates the SLOW post protection settings for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putslowpostprotectionsettings UpdateSlowPostProtectionSetting(ctx context.Context, params UpdateSlowPostProtectionSettingRequest) (*UpdateSlowPostProtectionSettingResponse, error) }
The SlowPostProtectionSetting interface supports retrieving and updating the slow POST protection settings for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#slowpostprotection
type SlowPostProtectionSettingDurationThreshold ¶ added in v2.2.0
type SlowPostProtectionSettingDurationThreshold struct {
Timeout int `json:"timeout"`
}
SlowPostProtectionSettingDurationThreshold describes the length of time in seconds within which the first eight kilobytes of the POST body must be transferred to avoid applying the action specified in the policy.
type SlowPostProtectionSettingSlowRateThreshold ¶ added in v2.2.0
type SlowPostProtectionSettingSlowRateThreshold struct { Rate int `json:"rate"` Period int `json:"period"` }
SlowPostProtectionSettingSlowRateThreshold describes the average rate in bytes per second over a specified period of time before an action (alert or abort) in the policy triggers.
type SlowPostexp ¶ added in v2.2.0
type SlowPostexp struct { Action string `json:"action"` SlowRateThreshold *SlowRateThresholdExp `json:"slowRateThreshold,omitempty"` DurationThreshold *DurationThresholdExp `json:"durationThreshold,omitempty"` }
SlowPostexp is returned as part of GetExportConfigurationResponse.
type SlowRateThresholdExp ¶ added in v2.5.0
SlowRateThresholdExp is returned as part of GetExportConfigurationResponse.
type SpecificHeaderCookieOrParamNameValuePtr ¶ added in v2.5.0
type SpecificHeaderCookieOrParamNameValuePtr struct { Name string `json:"name,omitempty"` Selector string `json:"selector,omitempty"` Value string `json:"value,omitempty"` }
SpecificHeaderCookieOrParamNameValuePtr is used as part of condition and exception information for a rule.
type SpecificHeaderCookieOrParamNameValueexp ¶ added in v2.2.0
type SpecificHeaderCookieOrParamNameValueexp struct { Name *json.RawMessage `json:"name,omitempty"` Selector string `json:"selector,omitempty"` Value *json.RawMessage `json:"value,omitempty"` }
SpecificHeaderCookieOrParamNameValueexp is returned as part of GetExportConfigurationResponse.
type SpecificHeaderCookieOrParamNamesPtr ¶ added in v2.5.0
type SpecificHeaderCookieOrParamNamesPtr []struct { Names []string `json:"names,omitempty"` Selector string `json:"selector,omitempty"` }
SpecificHeaderCookieOrParamNamesPtr is used as part of condition and exception information for a rule.
type SpecificHeaderCookieOrParamPrefixPtr ¶ added in v2.5.0
type SpecificHeaderCookieOrParamPrefixPtr struct { Prefix string `json:"prefix,omitempty"` Selector string `json:"selector,omitempty"` }
SpecificHeaderCookieOrParamPrefixPtr is used as part of condition and exception information for a rule.
type SpecificHeaderCookieParamXMLOrJSONNames ¶ added in v2.8.1
type SpecificHeaderCookieParamXMLOrJSONNames AttackGroupSpecificHeaderCookieParamXMLOrJSONNames
SpecificHeaderCookieParamXMLOrJSONNames is used as part of condition and exception information for an ASE rule.
type StatusValue ¶
type StatusValue string
StatusValue is used to create an "enum" of possible Activation.Status values
type ThreatIntel ¶ added in v2.6.0
type ThreatIntel interface { // GetThreatIntel retrieves the current threat intel settings. GetThreatIntel(ctx context.Context, params GetThreatIntelRequest) (*GetThreatIntelResponse, error) // UpdateThreatIntel modifies the current threat intel settings. UpdateThreatIntel(ctx context.Context, params UpdateThreatIntelRequest) (*UpdateThreatIntelResponse, error) }
The ThreatIntel interface supports retrieving and modifying the operational settings for adaptive intelligence.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#threatintel
type TuningRecommendations ¶ added in v2.8.1
type TuningRecommendations interface { // https://techdocs.akamai.com/application-security/reference/get-recommendations GetTuningRecommendations(ctx context.Context, params GetTuningRecommendationsRequest) (*GetTuningRecommendationsResponse, error) // https://techdocs.akamai.com/application-security/reference/get-recommendations-attack-group GetAttackGroupRecommendations(ctx context.Context, params GetAttackGroupRecommendationsRequest) (*GetAttackGroupRecommendationsResponse, error) // https://techdocs.akamai.com/application-security/reference/get-recommendations-rule GetRuleRecommendations(ctx context.Context, params GetRuleRecommendationsRequest) (*GetRuleRecommendationsResponse, error) }
The TuningRecommendations interface supports retrieving tuning recommendations for a security policy, a specific attack group or a rule
https://techdocs.akamai.com/application-security/reference/get-recommendations
type UpdateAPIConstraintsProtectionRequest ¶ added in v2.5.0
type UpdateAPIConstraintsProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyAPIConstraints bool `json:"applyApiConstraints"` }
UpdateAPIConstraintsProtectionRequest is used to modify the API constraints protection setting.
func (UpdateAPIConstraintsProtectionRequest) Validate ¶ added in v2.5.0
func (v UpdateAPIConstraintsProtectionRequest) Validate() error
Validate validates an UpdateAPIConstraintsProtectionRequest.
type UpdateAPIConstraintsProtectionResponse ¶ added in v2.5.0
type UpdateAPIConstraintsProtectionResponse ProtectionsResponse
UpdateAPIConstraintsProtectionResponse is returned from a call to UpdateAPIConstraintsProtection.
type UpdateAdvancedSettingsEvasivePathMatchRequest ¶ added in v2.9.0
type UpdateAdvancedSettingsEvasivePathMatchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` EnablePathMatch bool `json:"enablePathMatch"` }
UpdateAdvancedSettingsEvasivePathMatchRequest is used to update the EvasivePathMatch setting
func (UpdateAdvancedSettingsEvasivePathMatchRequest) Validate ¶ added in v2.9.0
func (v UpdateAdvancedSettingsEvasivePathMatchRequest) Validate() error
Validate validates UpdateAdvancedSettingsEvasivePathMatchRequest
type UpdateAdvancedSettingsEvasivePathMatchResponse ¶ added in v2.9.0
type UpdateAdvancedSettingsEvasivePathMatchResponse struct {
EnablePathMatch bool `json:"enablePathMatch"`
}
UpdateAdvancedSettingsEvasivePathMatchResponse returns the result of updating the EvasivePathMatch setting
type UpdateAdvancedSettingsLoggingRequest ¶ added in v2.2.0
type UpdateAdvancedSettingsLoggingRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateAdvancedSettingsLoggingRequest is used to update the HTTP header logging settings for a configuration or policy.
func (UpdateAdvancedSettingsLoggingRequest) Validate ¶ added in v2.2.0
func (v UpdateAdvancedSettingsLoggingRequest) Validate() error
Validate validates an UpdateAdvancedSettingsLoggingRequest.
type UpdateAdvancedSettingsLoggingResponse ¶ added in v2.2.0
type UpdateAdvancedSettingsLoggingResponse struct { Override bool `json:"override"` AllowSampling bool `json:"allowSampling"` Cookies struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"cookies"` CustomHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"customHeaders"` StandardHeaders struct { Type string `json:"type"` Values []string `json:"values,omitempty"` } `json:"standardHeaders"` }
UpdateAdvancedSettingsLoggingResponse is returned from a call to UpdateAdvancedSettingsLogging.
type UpdateAdvancedSettingsPragmaRequest ¶ added in v2.5.0
type UpdateAdvancedSettingsPragmaRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateAdvancedSettingsPragmaRequest is used to modify the pragma settings for a security policy.
func (UpdateAdvancedSettingsPragmaRequest) Validate ¶ added in v2.5.0
func (v UpdateAdvancedSettingsPragmaRequest) Validate() error
Validate validates an UpdateAdvancedSettingsPragmaRequest.
type UpdateAdvancedSettingsPragmaResponse ¶ added in v2.5.0
type UpdateAdvancedSettingsPragmaResponse struct { Action string `json:"action"` ConditionOperator string `json:"conditionOperator"` ExcludeCondition []ExcludeCondition `json:"excludeCondition"` }
UpdateAdvancedSettingsPragmaResponse is returned from a call to UpdateAdvancedSettingsPragma.
type UpdateAdvancedSettingsPrefetchRequest ¶ added in v2.2.0
type UpdateAdvancedSettingsPrefetchRequest struct { ConfigID int `json:"-"` Version int `json:"-"` AllExtensions bool `json:"allExtensions"` EnableAppLayer bool `json:"enableAppLayer"` EnableRateControls bool `json:"enableRateControls"` Extensions []string `json:"extensions,omitempty"` }
UpdateAdvancedSettingsPrefetchRequest is used to modify the prefetch request settings.
func (UpdateAdvancedSettingsPrefetchRequest) Validate ¶ added in v2.2.0
func (v UpdateAdvancedSettingsPrefetchRequest) Validate() error
Validate validates an UpdateAdvancedSettingsPrefetchRequest.
type UpdateAdvancedSettingsPrefetchResponse ¶ added in v2.2.0
type UpdateAdvancedSettingsPrefetchResponse struct { AllExtensions bool `json:"allExtensions"` EnableAppLayer bool `json:"enableAppLayer"` EnableRateControls bool `json:"enableRateControls"` Extensions []string `json:"extensions,omitempty"` }
UpdateAdvancedSettingsPrefetchResponse is returned from a call to UpdateAdvancedSettingsPrefetch.
type UpdateApiRequestConstraintsRequest ¶ added in v2.2.0
type UpdateApiRequestConstraintsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApiID int `json:"-"` Action string `json:"action"` }
UpdateApiRequestConstraintsRequest is used to modify the action taken when an API request contraint is triggered.
func (UpdateApiRequestConstraintsRequest) Validate ¶ added in v2.2.0
func (v UpdateApiRequestConstraintsRequest) Validate() error
Validate validates an UpdateApiRequestConstraintsRequest.
type UpdateApiRequestConstraintsResponse ¶ added in v2.2.0
type UpdateApiRequestConstraintsResponse struct {
Action string `json:"action"`
}
UpdateApiRequestConstraintsResponse is returned from a call to UpdateApiRequestConstraints.
type UpdateAttackGroupRequest ¶ added in v2.5.0
type UpdateAttackGroupRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Group string `json:"-"` Action string `json:"action"` JsonPayloadRaw json.RawMessage `json:"conditionException,omitempty"` }
UpdateAttackGroupRequest is used to modify what action to take when an attack group’s rule triggers.
func (UpdateAttackGroupRequest) Validate ¶ added in v2.5.0
func (v UpdateAttackGroupRequest) Validate() error
Validate validates an UpdateAttackGroupConditionExceptionRequest.
type UpdateAttackGroupResponse ¶ added in v2.5.0
type UpdateAttackGroupResponse struct { Action string `json:"action,omitempty"` ConditionException *AttackGroupConditionException `json:"conditionException,omitempty"` }
UpdateAttackGroupResponse is returned from a call to UpdateAttackGroup.
type UpdateBypassNetworkListsRequest ¶ added in v2.2.0
type UpdateBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` NetworkLists []string `json:"networkLists"` }
UpdateBypassNetworkListsRequest is used to modify which network lists are used in the bypass network lists settings.
func (UpdateBypassNetworkListsRequest) Validate ¶ added in v2.2.0
func (v UpdateBypassNetworkListsRequest) Validate() error
Validate validates an UpdateBypassNetworkListsRequest.
type UpdateBypassNetworkListsResponse ¶ added in v2.2.0
type UpdateBypassNetworkListsResponse struct { Block string `json:"block"` GeoControls struct { BlockedIPNetworkLists struct { NetworkList []string `json:"networkList"` } `json:"blockedIPNetworkLists"` } `json:"geoControls"` IPControls struct { AllowedIPNetworkLists struct { NetworkList []string `json:"networkList"` } `json:"allowedIPNetworkLists"` BlockedIPNetworkLists struct { NetworkList []string `json:"networkList"` } `json:"blockedIPNetworkLists"` } `json:"ipControls"` }
UpdateBypassNetworkListsResponse is returned from a call to UpdateBypassNetworkLists.
type UpdateConditionExceptionRequest ¶ added in v2.6.0
type UpdateConditionExceptionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` Conditions *RuleConditions `json:"conditions,omitempty"` Exception *RuleException `json:"exception,omitempty"` AdvancedExceptionsList *AdvancedExceptions `json:"advancedExceptions,omitempty"` }
UpdateConditionExceptionRequest is used to update the condition and exception information for a rule.
func (UpdateConditionExceptionRequest) Validate ¶ added in v2.6.0
func (v UpdateConditionExceptionRequest) Validate() error
Validate validates an UpdateConditionExceptionRequest.
type UpdateConditionExceptionResponse ¶ added in v2.6.0
type UpdateConditionExceptionResponse RuleConditionException
UpdateConditionExceptionResponse is returned from a call to UpdateConditionException.
type UpdateConfigurationRequest ¶ added in v2.2.0
type UpdateConfigurationRequest struct { ConfigID int `json:"-"` Name string `json:"name"` Description string `json:"description"` }
UpdateConfigurationRequest is used tdo modify the name or description of an existing security configuration.
func (UpdateConfigurationRequest) Validate ¶ added in v2.2.0
func (v UpdateConfigurationRequest) Validate() error
Validate validates an UpdateConfigurationRequest.
type UpdateConfigurationResponse ¶ added in v2.2.0
type UpdateConfigurationResponse struct { Name string `json:"name"` Description string `json:"description"` }
UpdateConfigurationResponse is returned from a call to UpdateConfiguration.
type UpdateCustomDenyRequest ¶ added in v2.2.0
type UpdateCustomDenyRequest struct { ConfigID int `json:"-"` Version int `json:"-"` ID string `json:"id"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateCustomDenyRequest is used to details for a specific custom deny action.
func (UpdateCustomDenyRequest) Validate ¶ added in v2.2.0
func (v UpdateCustomDenyRequest) Validate() error
Validate validates an UpdateCustomDenyRequest.
type UpdateCustomDenyResponse ¶ added in v2.2.0
type UpdateCustomDenyResponse struct { Description string `json:"description,omitempty"` Name string `json:"name"` ID customDenyID `json:"-"` Parameters []struct { DisplayName string `json:"-"` Name string `json:"name"` Value string `json:"value"` } `json:"parameters"` }
UpdateCustomDenyResponse is returned from a call to UpdateCustomDeny.
type UpdateCustomRuleActionRequest ¶
type UpdateCustomRuleActionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` Action string `json:"action"` }
UpdateCustomRuleActionRequest is used to modify an existing custom rule.
func (UpdateCustomRuleActionRequest) Validate ¶
func (v UpdateCustomRuleActionRequest) Validate() error
Validate validates an UpdateCustomRuleActionRequest.
type UpdateCustomRuleActionResponse ¶
type UpdateCustomRuleActionResponse struct { Action string `json:"action"` CanUseAdvancedActions bool `json:"canUseAdvancedActions"` Link string `json:"link"` Name string `json:"name"` RuleID int `json:"ruleId"` }
UpdateCustomRuleActionResponse is returned from a call to UpdateCustomRuleAction.
type UpdateCustomRuleRequest ¶
type UpdateCustomRuleRequest struct { ConfigID int `json:"configid,omitempty"` ID int `json:"id,omitempty"` Version int `json:"version,omitempty"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateCustomRuleRequest is used to modify an existing custom rule.
func (UpdateCustomRuleRequest) Validate ¶
func (v UpdateCustomRuleRequest) Validate() error
Validate validates an UpdateCustomRuleRequest.
type UpdateCustomRuleResponse ¶
type UpdateCustomRuleResponse GetCustomRuleResponse
UpdateCustomRuleResponse is returned from a call to UpdateCustomRule.
type UpdateEvalHostRequest ¶ added in v2.2.0
type UpdateEvalHostRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostnames []string `json:"hostnames"` }
UpdateEvalHostRequest is used to modify the evaluation hostnames for a configuration.
func (UpdateEvalHostRequest) Validate ¶ added in v2.2.0
func (v UpdateEvalHostRequest) Validate() error
Validate validates an UpdateEvalHostRequest.
type UpdateEvalHostResponse ¶ added in v2.2.0
type UpdateEvalHostResponse struct { HostnameList []struct { Hostname string `json:"hostname"` } `json:"hostnameList"` }
UpdateEvalHostResponse is returned from a call to UpdateEvalHost.
type UpdateEvalProtectHostRequest ¶ added in v2.2.0
type UpdateEvalProtectHostRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Hostnames []string `json:"hostnames"` }
UpdateEvalProtectHostRequest is used to call UpdateEvalProtectHost.
func (UpdateEvalProtectHostRequest) Validate ¶ added in v2.2.0
func (v UpdateEvalProtectHostRequest) Validate() error
Validate validates an UpdateEvalProtectHostRequest.
type UpdateEvalProtectHostResponse ¶ added in v2.2.0
type UpdateEvalProtectHostResponse struct { HostnameList []struct { Hostname string `json:"hostname"` } `json:"hostnameList"` }
UpdateEvalProtectHostResponse is returned from a call to UpdateEvalProtectHost.
type UpdateEvalRequest ¶ added in v2.0.4
type UpdateEvalRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"-"` Mode string `json:"-"` Eval string `json:"eval"` }
UpdateEvalRequest is used to modify an evaluation mode setting.
func (UpdateEvalRequest) Validate ¶ added in v2.0.4
func (v UpdateEvalRequest) Validate() error
Validate validates an UpdateEvalRequest.
type UpdateEvalResponse ¶ added in v2.0.4
type UpdateEvalResponse struct { Current string `json:"current"` Eval string `json:"eval"` Mode string `json:"mode"` }
UpdateEvalResponse is returned from a call to UpdateEval.
type UpdateEvalRuleRequest ¶ added in v2.5.0
type UpdateEvalRuleRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` Action string `json:"action"` JsonPayloadRaw json.RawMessage `json:"conditionException,omitempty"` }
UpdateEvalRuleRequest is used to modify a rule available for evaluation and its action.
func (UpdateEvalRuleRequest) Validate ¶ added in v2.5.0
func (v UpdateEvalRuleRequest) Validate() error
Validate validates an UpdateEvalRuleRequest.
type UpdateEvalRuleResponse ¶ added in v2.5.0
type UpdateEvalRuleResponse struct { Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` }
UpdateEvalRuleResponse is returned from a call to UpdateEvalRule.
type UpdateIPGeoProtectionRequest ¶ added in v2.5.0
type UpdateIPGeoProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
UpdateIPGeoProtectionRequest is used to modify the IPGeo protection settings.
func (UpdateIPGeoProtectionRequest) Validate ¶ added in v2.5.0
func (v UpdateIPGeoProtectionRequest) Validate() error
Validate validates an UpdateIPGeoProtectionRequest.
type UpdateIPGeoProtectionResponse ¶ added in v2.5.0
type UpdateIPGeoProtectionResponse ProtectionsResponse
UpdateIPGeoProtectionResponse is returned from a call to UpdateIPGeoProtection.
type UpdateIPGeoRequest ¶ added in v2.0.4
type UpdateIPGeoRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Block string `json:"block"` GeoControls *IPGeoGeoControls `json:"geoControls,omitempty"` IPControls *IPGeoIPControls `json:"ipControls,omitempty"` }
UpdateIPGeoRequest is used to update the method and which network lists are used for IP/Geo firewall blocking.
func (UpdateIPGeoRequest) Validate ¶ added in v2.0.4
func (v UpdateIPGeoRequest) Validate() error
Validate validates an UpdateIPGeoRequest.
type UpdateIPGeoResponse ¶ added in v2.0.4
type UpdateIPGeoResponse IPGeoFirewall
UpdateIPGeoResponse is returned from a call to UpdateIPGeo
type UpdateMalwarePolicyActionRequest ¶ added in v2.16.0
type UpdateMalwarePolicyActionRequest struct { ConfigID int `json:"configID"` Version int `json:"version"` PolicyID string `json:"policyID"` MalwarePolicyID int `json:"id"` Action string `json:"action"` UnscannedAction string `json:"unscannedAction"` }
UpdateMalwarePolicyActionRequest is used to update the actions for a malware policy.
func (UpdateMalwarePolicyActionRequest) Validate ¶ added in v2.16.0
func (v UpdateMalwarePolicyActionRequest) Validate() error
Validate validates an UpdateMalwarePolicyActionRequest.
type UpdateMalwarePolicyActionResponse ¶ added in v2.16.0
type UpdateMalwarePolicyActionResponse struct { Action string `json:"action"` UnscannedAction string `json:"unscannedAction"` }
UpdateMalwarePolicyActionResponse is returned from a call to UpdateMalwarePolicy.
type UpdateMalwarePolicyActionsRequest ¶ added in v2.16.0
type UpdateMalwarePolicyActionsRequest struct { ConfigID int Version int PolicyID string MalwarePolicyActions json.RawMessage `json:"-"` }
UpdateMalwarePolicyActionsRequest is used to update the actions for multiple malware policies.
func (UpdateMalwarePolicyActionsRequest) Validate ¶ added in v2.16.0
func (v UpdateMalwarePolicyActionsRequest) Validate() error
Validate validates an UpdateMalwarePolicyActionsRequest.
type UpdateMalwarePolicyActionsResponse ¶ added in v2.16.0
type UpdateMalwarePolicyActionsResponse GetMalwarePolicyActionsResponse
UpdateMalwarePolicyActionsResponse is returned from a call to UpdateMalwarePolicyActions.
type UpdateMalwarePolicyRequest ¶ added in v2.16.0
type UpdateMalwarePolicyRequest struct { ConfigID int ConfigVersion int MalwarePolicyID int Policy *MalwarePolicyBody }
UpdateMalwarePolicyRequest is used to update an existing malware policy.
func (UpdateMalwarePolicyRequest) Validate ¶ added in v2.16.0
func (v UpdateMalwarePolicyRequest) Validate() error
Validate validates an UpdateMalwarePolicyRequest.
type UpdateMalwareProtectionRequest ¶ added in v2.16.0
type UpdateMalwareProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
UpdateMalwareProtectionRequest is used to modify the malware protection setting.
func (UpdateMalwareProtectionRequest) Validate ¶ added in v2.16.0
func (v UpdateMalwareProtectionRequest) Validate() error
Validate validates an UpdateMalwareProtectionRequest.
type UpdateMalwareProtectionResponse ¶ added in v2.16.0
type UpdateMalwareProtectionResponse ProtectionsResponse
UpdateMalwareProtectionResponse is returned from a call to UpdateMalwareProtection.
type UpdateMatchTargetRequest ¶
type UpdateMatchTargetRequest struct { ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` JsonPayloadRaw json.RawMessage `json:"-"` TargetID int `json:"targetId"` }
UpdateMatchTargetRequest is used to modify an existing match target.
func (UpdateMatchTargetRequest) Validate ¶
func (v UpdateMatchTargetRequest) Validate() error
Validate validates an UpdateMatchTargetRequest.
type UpdateMatchTargetResponse ¶
type UpdateMatchTargetResponse struct { Type string `json:"type"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` DefaultFile string `json:"defaultFile"` Hostnames []string `json:"hostnames"` IsNegativeFileExtensionMatch bool `json:"isNegativeFileExtensionMatch"` IsNegativePathMatch *json.RawMessage `json:"isNegativePathMatch,omitempty"` FilePaths []string `json:"filePaths"` FileExtensions []string `json:"fileExtensions"` SecurityPolicy struct { PolicyID string `json:"policyId"` } `json:"securityPolicy"` Sequence int `json:"-"` TargetID int `json:"targetId"` BypassNetworkLists []struct { Name string `json:"name"` ID string `json:"id"` } `json:"bypassNetworkLists"` }
UpdateMatchTargetResponse is returned from a call to UpdateMatchTarget.
type UpdateMatchTargetSequenceRequest ¶
type UpdateMatchTargetSequenceRequest struct { ConfigID int `json:"-"` ConfigVersion int `json:"-"` TargetSequence []MatchTargetItem `json:"targetSequence"` Type string `json:"type"` }
UpdateMatchTargetSequenceRequest UpdateMatchTargetSequenceRequest is used to modify an existing match target sequence.
func (UpdateMatchTargetSequenceRequest) Validate ¶
func (v UpdateMatchTargetSequenceRequest) Validate() error
Validate validates an UpdateMatchTargetSequenceRequest.
type UpdateMatchTargetSequenceResponse ¶
type UpdateMatchTargetSequenceResponse struct { TargetSequence []MatchTargetItem `json:"targetSequence"` Type string `json:"type"` }
UpdateMatchTargetSequenceResponse is returned from a call to UpdateMatchTargetSequence.
type UpdateNetworkLayerProtectionRequest ¶ added in v2.0.4
type UpdateNetworkLayerProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` }
UpdateNetworkLayerProtectionRequest is used to modify the network layer protection setting.
func (UpdateNetworkLayerProtectionRequest) Validate ¶ added in v2.0.4
func (v UpdateNetworkLayerProtectionRequest) Validate() error
Validate validates an UpdateNetworkLayerProtectionRequest.
type UpdateNetworkLayerProtectionResponse ¶ added in v2.0.4
type UpdateNetworkLayerProtectionResponse ProtectionsResponse
UpdateNetworkLayerProtectionResponse is returned from a call to UpdateNetworkLayerProtection
type UpdatePenaltyBoxRequest ¶
type UpdatePenaltyBoxRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Action string `json:"action"` PenaltyBoxProtection bool `json:"penaltyBoxProtection"` }
UpdatePenaltyBoxRequest is used to modify the penalty box settings.
func (UpdatePenaltyBoxRequest) Validate ¶
func (v UpdatePenaltyBoxRequest) Validate() error
Validate validates an UpdatePenaltyBoxRequest.
type UpdatePenaltyBoxResponse ¶
type UpdatePenaltyBoxResponse struct { Action string `json:"action"` PenaltyBoxProtection bool `json:"penaltyBoxProtection"` }
UpdatePenaltyBoxResponse is returned from a call to UpdatePenaltyBox.
type UpdatePolicyProtectionsRequest ¶ added in v2.0.4
type UpdatePolicyProtectionsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` ApplyMalwareControls bool `json:"applyMalwareControls"` }
UpdatePolicyProtectionsRequest is used to modify the policy protection setting.
func (UpdatePolicyProtectionsRequest) Validate ¶ added in v2.0.4
func (v UpdatePolicyProtectionsRequest) Validate() error
Validate validates an UpdatePolicyProtectionsRequest.
type UpdateRatePolicyActionRequest ¶
type UpdateRatePolicyActionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RatePolicyID int `json:"-"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
UpdateRatePolicyActionRequest is used to update the actions for a rate policy.
func (UpdateRatePolicyActionRequest) Validate ¶
func (v UpdateRatePolicyActionRequest) Validate() error
Validate validates an UpdateRatePolicyActionRequest.
type UpdateRatePolicyActionResponse ¶
type UpdateRatePolicyActionResponse struct { ID int `json:"id"` Ipv4Action string `json:"ipv4Action"` Ipv6Action string `json:"ipv6Action"` }
UpdateRatePolicyActionResponse is returned from a call to UpdateRatePolicy.
type UpdateRatePolicyRequest ¶
type UpdateRatePolicyRequest struct { RatePolicyID int `json:"id"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateRatePolicyRequest is used to modify an existing rate policy.
func (UpdateRatePolicyRequest) Validate ¶
func (v UpdateRatePolicyRequest) Validate() error
Validate validates an UpdateRatePolicyRequest.
type UpdateRatePolicyResponse ¶
type UpdateRatePolicyResponse struct { ID int `json:"id"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` MatchType string `json:"matchType"` Type string `json:"type"` Name string `json:"name"` Description string `json:"description"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"path"` PathMatchType string `json:"pathMatchType"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"fileExtensions"` Hosts *RatePoliciesHosts `json:"hosts,omitempty"` Hostnames []string `json:"hostnames"` AdditionalMatchOptions []RatePolicyMatchOption `json:"additionalMatchOptions,omitempty"` QueryParameters []struct { Name string `json:"name"` Values []string `json:"values"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` } `json:"queryParameters"` CreateDate string `json:"-"` UpdateDate string `json:"-"` Used json.RawMessage `json:"used"` }
UpdateRatePolicyResponse is returned from a call to UpdateRatePolicy.
type UpdateRateProtectionRequest ¶ added in v2.0.4
type UpdateRateProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyRateControls bool `json:"applyRateControls"` }
UpdateRateProtectionRequest is used to modify the rate protection setting.
func (UpdateRateProtectionRequest) Validate ¶ added in v2.0.4
func (v UpdateRateProtectionRequest) Validate() error
Validate validates an UpdateRateProtectionRequest.
type UpdateRateProtectionResponse ¶ added in v2.0.4
type UpdateRateProtectionResponse ProtectionsResponse
UpdateRateProtectionResponse is returned from a call to UpdateRateProtection.
type UpdateReputationAnalysisRequest ¶ added in v2.2.0
type UpdateReputationAnalysisRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ForwardToHTTPHeader bool `json:"forwardToHTTPHeader"` }
UpdateReputationAnalysisRequest is used to modify the reputation analysis settings for a security poliyc.
func (UpdateReputationAnalysisRequest) Validate ¶ added in v2.2.0
func (v UpdateReputationAnalysisRequest) Validate() error
Validate validates an UpdateReputationAnalysisRequest.
type UpdateReputationAnalysisResponse ¶ added in v2.2.0
type UpdateReputationAnalysisResponse struct { ForwardToHTTPHeader bool `json:"forwardToHTTPHeader"` }
UpdateReputationAnalysisResponse is returned from a call to UpdateReputationAnalysis.
type UpdateReputationProfileActionRequest ¶ added in v2.0.4
type UpdateReputationProfileActionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ReputationProfileID int `json:"-"` Action string `json:"action"` }
UpdateReputationProfileActionRequest is used to modify the details for a specific reputation profile.
func (UpdateReputationProfileActionRequest) Validate ¶ added in v2.0.4
func (v UpdateReputationProfileActionRequest) Validate() error
Validate validates an UpdateReputationProfileActionRequest.
type UpdateReputationProfileActionResponse ¶ added in v2.0.4
type UpdateReputationProfileActionResponse struct {
Action string `json:"action"`
}
UpdateReputationProfileActionResponse is returned from a call to UpdateReputationProfileAction.
type UpdateReputationProfileRequest ¶ added in v2.0.4
type UpdateReputationProfileRequest struct { ConfigID int `json:"-"` ConfigVersion int `json:"-"` ReputationProfileId int `json:"-"` JsonPayloadRaw json.RawMessage `json:"-"` }
UpdateReputationProfileRequest is used to modify an existing reputation profile.
func (UpdateReputationProfileRequest) Validate ¶ added in v2.0.4
func (v UpdateReputationProfileRequest) Validate() error
Validate validates an UpdateReputationProfileRequest.
type UpdateReputationProfileResponse ¶ added in v2.0.4
type UpdateReputationProfileResponse struct { ID int `json:"id"` PolicyID int `json:"policyId"` ConfigID int `json:"configId"` ConfigVersion int `json:"configVersion"` MatchType string `json:"matchType"` Type string `json:"type"` Name string `json:"name"` Description string `json:"description"` AverageThreshold int `json:"averageThreshold"` BurstThreshold int `json:"burstThreshold"` ClientIdentifier string `json:"clientIdentifier"` UseXForwardForHeaders bool `json:"useXForwardForHeaders"` RequestType string `json:"requestType"` SameActionOnIpv6 bool `json:"sameActionOnIpv6"` Path struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"path"` PathMatchType string `json:"pathMatchType"` PathURIPositiveMatch bool `json:"pathUriPositiveMatch"` FileExtensions struct { PositiveMatch bool `json:"positiveMatch"` Values []string `json:"values"` } `json:"fileExtensions"` Hostnames []string `json:"hostNames"` AdditionalMatchOptions []struct { PositiveMatch bool `json:"positiveMatch"` Type string `json:"type"` Values []string `json:"values"` } `json:"additionalMatchOptions"` QueryParameters []struct { Name string `json:"name"` Values []string `json:"values"` PositiveMatch bool `json:"positiveMatch"` ValueInRange bool `json:"valueInRange"` } `json:"queryParameters"` CreateDate string `json:"createDate"` UpdateDate string `json:"updateDate"` Used bool `json:"used"` }
UpdateReputationProfileResponse is returned from a call to UpdateReputationProfile.
type UpdateReputationProtectionRequest ¶ added in v2.0.4
type UpdateReputationProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyReputationControls bool `json:"applyReputationControls"` }
UpdateReputationProtectionRequest is used to modify the reputation protection setting.
func (UpdateReputationProtectionRequest) Validate ¶ added in v2.0.4
func (v UpdateReputationProtectionRequest) Validate() error
Validate validates an UpdateReputationProtectionRequest.
type UpdateReputationProtectionResponse ¶ added in v2.0.4
type UpdateReputationProtectionResponse ProtectionsResponse
UpdateReputationProtectionResponse is returned from a call to UpdateReputationProtection.
type UpdateRuleRequest ¶ added in v2.5.0
type UpdateRuleRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` RuleID int `json:"-"` Action string `json:"action"` JsonPayloadRaw json.RawMessage `json:"conditionException,omitempty"` }
UpdateRuleRequest is used to modify the settings for a rule.
func (UpdateRuleRequest) Validate ¶ added in v2.5.0
func (v UpdateRuleRequest) Validate() error
Validate validates an UpdateRuleRequest.
type UpdateRuleResponse ¶ added in v2.5.0
type UpdateRuleResponse struct { Action string `json:"action,omitempty"` ConditionException *RuleConditionException `json:"conditionException,omitempty"` }
UpdateRuleResponse is returned from a call to UpdateRule.
type UpdateRuleUpgradeRequest ¶ added in v2.0.4
type UpdateRuleUpgradeRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Upgrade bool `json:"upgrade"` Mode string `json:"mode,omitempty"` }
UpdateRuleUpgradeRequest is used to upgrade to the most recent version of the KRS rule set.
func (UpdateRuleUpgradeRequest) Validate ¶ added in v2.0.4
func (v UpdateRuleUpgradeRequest) Validate() error
Validate validates an UpdateRuleUpgradeRequest.
type UpdateRuleUpgradeResponse ¶ added in v2.0.4
type UpdateRuleUpgradeResponse struct { Current string `json:"current"` Mode string `json:"mode"` Eval string `json:"eval"` }
UpdateRuleUpgradeResponse is returned from a call to UpdateRuleUpgrade.
type UpdateSecurityPolicyRequest ¶ added in v2.0.4
type UpdateSecurityPolicyRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` PolicyName string `json:"policyName"` }
UpdateSecurityPolicyRequest is used to modify a security policy.
func (UpdateSecurityPolicyRequest) Validate ¶ added in v2.0.4
func (v UpdateSecurityPolicyRequest) Validate() error
Validate validates an UpdateSecurityPolicyRequest.
type UpdateSecurityPolicyResponse ¶ added in v2.0.4
type UpdateSecurityPolicyResponse struct { ConfigID int `json:"configId"` PolicyID string `json:"policyId"` PolicyName string `json:"policyName"` DefaultSettings bool `json:"defaultSettings,omitempty"` PolicySecurityControls struct { ApplyAPIConstraints bool `json:"applyApiConstraints"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` ApplyBotmanControls bool `json:"applyBotmanControls"` ApplyNetworkLayerControls bool `json:"applyNetworkLayerControls"` ApplyRateControls bool `json:"applyRateControls"` ApplyReputationControls bool `json:"applyReputationControls"` ApplySlowPostControls bool `json:"applySlowPostControls"` } `json:"policySecurityControls"` Version int `json:"version"` }
UpdateSecurityPolicyResponse is returned from a call to UpdateSecurityPolicy.
type UpdateSelectedHostnameRequest ¶
type UpdateSelectedHostnameRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` HostnameList []Hostname `json:"hostnameList"` }
UpdateSelectedHostnameRequest is used to modify the selected hostnames for a configuration. Deprecated: this struct will be removed in a future release.
func (UpdateSelectedHostnameRequest) Validate ¶
func (v UpdateSelectedHostnameRequest) Validate() error
Validate validates an UpdateSelectedHostnameRequest. Deprecated: this method will be removed in a future release.
type UpdateSelectedHostnameResponse ¶
type UpdateSelectedHostnameResponse struct {
HostnameList []Hostname `json:"hostnameList"`
}
UpdateSelectedHostnameResponse is returned from a call to UpdateSelectedHostname. Deprecated: this struct will be removed in a future release.
type UpdateSelectedHostnamesRequest ¶ added in v2.8.1
type UpdateSelectedHostnamesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` HostnameList []Hostname `json:"hostnameList"` }
UpdateSelectedHostnamesRequest is used to modify the selected hostnames for a configuration.
func (UpdateSelectedHostnamesRequest) Validate ¶ added in v2.8.1
func (v UpdateSelectedHostnamesRequest) Validate() error
Validate validates an UpdateSelectedHostnamesRequest.
type UpdateSelectedHostnamesResponse ¶ added in v2.8.1
type UpdateSelectedHostnamesResponse struct {
HostnameList []Hostname `json:"hostnameList"`
}
UpdateSelectedHostnamesResponse is returned from a call to UpdateSelectedHostnames.
type UpdateSiemSettingsRequest ¶ added in v2.2.0
type UpdateSiemSettingsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` EnableForAllPolicies bool `json:"enableForAllPolicies"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents"` SiemDefinitionID int `json:"siemDefinitionId"` FirewallPolicyIds []string `json:"firewallPolicyIds"` }
UpdateSiemSettingsRequest is used to modify the SIEM settings for a configuration.
func (UpdateSiemSettingsRequest) Validate ¶ added in v2.2.0
func (v UpdateSiemSettingsRequest) Validate() error
Validate validates an UpdateSiemSettingsRequest.
type UpdateSiemSettingsResponse ¶ added in v2.2.0
type UpdateSiemSettingsResponse struct { EnableForAllPolicies bool `json:"enableForAllPolicies"` EnableSiem bool `json:"enableSiem"` EnabledBotmanSiemEvents bool `json:"enabledBotmanSiemEvents"` SiemDefinitionID int `json:"siemDefinitionId"` FirewallPolicyIds []string `json:"firewallPolicyIds"` }
UpdateSiemSettingsResponse is returned from a call to UpdateSiemSettings.
type UpdateSlowPostProtectionRequest ¶ added in v2.0.4
type UpdateSlowPostProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplySlowPostControls bool `json:"applySlowPostControls"` }
UpdateSlowPostProtectionRequest is used to modify the slow post protection setting.
func (UpdateSlowPostProtectionRequest) Validate ¶ added in v2.0.4
func (v UpdateSlowPostProtectionRequest) Validate() error
Validate validates an UpdateSlowPostProtectionRequest.
type UpdateSlowPostProtectionResponse ¶ added in v2.0.4
type UpdateSlowPostProtectionResponse ProtectionsResponse
UpdateSlowPostProtectionResponse is returned from a call to UpdateSlowPostProtection.
type UpdateSlowPostProtectionSettingRequest ¶
type UpdateSlowPostProtectionSettingRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` PolicyID string `json:"policyId"` Action string `json:"action"` SlowRateThreshold struct { Rate int `json:"rate"` Period int `json:"period"` } `json:"slowRateThreshold"` DurationThreshold struct { Timeout int `json:"timeout"` } `json:"durationThreshold"` }
UpdateSlowPostProtectionSettingRequest is used to modify the slow post protection settings for a configuration.
func (UpdateSlowPostProtectionSettingRequest) Validate ¶
func (v UpdateSlowPostProtectionSettingRequest) Validate() error
Validate validates an UpdateSlowPostProtectionSettingRequest.
type UpdateSlowPostProtectionSettingResponse ¶
type UpdateSlowPostProtectionSettingResponse struct { Action string `json:"action"` SlowRateThreshold struct { Rate int `json:"rate"` Period int `json:"period"` } `json:"slowRateThreshold"` DurationThreshold struct { Timeout int `json:"timeout"` } `json:"durationThreshold"` }
UpdateSlowPostProtectionSettingResponse is returned from a call to UpdateSlowPostProtection.
type UpdateThreatIntelRequest ¶ added in v2.6.0
type UpdateThreatIntelRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ThreatIntel string `json:"threatIntel"` }
UpdateThreatIntelRequest is used to update the threat intel settings.
func (UpdateThreatIntelRequest) Validate ¶ added in v2.6.0
func (v UpdateThreatIntelRequest) Validate() error
Validate validates an UpdateAttackGroupConditionExceptionRequest.
type UpdateThreatIntelResponse ¶ added in v2.6.0
type UpdateThreatIntelResponse struct {
ThreatIntel string `json:"threatIntel,omitempty"`
}
UpdateThreatIntelResponse is returned from a call to UpdateThreatIntel.
type UpdateVersionNotesRequest ¶ added in v2.2.0
type UpdateVersionNotesRequest struct { ConfigID int `json:"-"` Version int `json:"-"` Notes string `json:"notes"` }
UpdateVersionNotesRequest is used to modify the version notes for a configuration version.
func (UpdateVersionNotesRequest) Validate ¶ added in v2.2.0
func (v UpdateVersionNotesRequest) Validate() error
Validate validates an UpdateVersionNotesRequest.
type UpdateVersionNotesResponse ¶ added in v2.2.0
type UpdateVersionNotesResponse struct {
Notes string `json:"notes"`
}
UpdateVersionNotesResponse is returned from a call to UpdateVersionNotes.
type UpdateWAFModeRequest ¶
type UpdateWAFModeRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` Current string `json:"-"` Mode string `json:"mode"` Eval string `json:"-"` }
UpdateWAFModeRequest is used to modify the setting that determines this mode how rules will be kept up to date.
func (UpdateWAFModeRequest) Validate ¶
func (v UpdateWAFModeRequest) Validate() error
Validate validates an UpdateWAFModeRequest.
type UpdateWAFModeResponse ¶
UpdateWAFModeResponse is returned from a call to UpdateWAFMode.
type UpdateWAFProtectionRequest ¶
type UpdateWAFProtectionRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"-"` ApplyApplicationLayerControls bool `json:"applyApplicationLayerControls"` }
UpdateWAFProtectionRequest is used to modify the WAF protection setting.
func (UpdateWAFProtectionRequest) Validate ¶
func (v UpdateWAFProtectionRequest) Validate() error
Validate validates an UpdateWAFProtectionRequest.
type UpdateWAFProtectionResponse ¶
type UpdateWAFProtectionResponse ProtectionsResponse
UpdateWAFProtectionResponse is returned from a call to UpdateWAFProtection.
type UpdateWAPBypassNetworkListsRequest ¶ added in v2.12.0
type UpdateWAPBypassNetworkListsRequest struct { ConfigID int `json:"-"` Version int `json:"-"` PolicyID string `json:"policyId"` NetworkLists []string `json:"networkLists"` }
UpdateWAPBypassNetworkListsRequest is used to modify which network lists are used in the bypass network lists settings.
func (UpdateWAPBypassNetworkListsRequest) Validate ¶ added in v2.12.0
func (v UpdateWAPBypassNetworkListsRequest) Validate() error
Validate validates an UpdateWAPBypassNetworkListsRequest.
type UpdateWAPBypassNetworkListsResponse ¶ added in v2.12.0
type UpdateWAPBypassNetworkListsResponse struct { Block string `json:"block"` GeoControls GeoControlsList `json:"geoControls"` IPControls IPControlsLists `json:"ipControls"` }
UpdateWAPBypassNetworkListsResponse is returned from a call to UpdateWAPBypassNetworkLists.
type UpdateWAPSelectedHostnamesRequest ¶ added in v2.6.0
type UpdateWAPSelectedHostnamesRequest struct { ConfigID int `json:"configId"` Version int `json:"version"` SecurityPolicyID string `json:"securityPolicyID"` ProtectedHosts []string `json:"protectedHostnames"` EvaluatedHosts []string `json:"evalHostnames"` }
UpdateWAPSelectedHostnamesRequest is used to modify the WAP selected hostnames and evaluated hostnames.
func (UpdateWAPSelectedHostnamesRequest) Validate ¶ added in v2.6.0
func (v UpdateWAPSelectedHostnamesRequest) Validate() error
Validate validates an UpdateWAPSelectedHostnamesRequest.
type UpdateWAPSelectedHostnamesResponse ¶ added in v2.6.0
type UpdateWAPSelectedHostnamesResponse struct { ProtectedHosts []string `json:"protectedHostnames"` EvaluatedHosts []string `json:"evalHostnames"` }
UpdateWAPSelectedHostnamesResponse is returned from a call to UpdateWAPSelectedHostnames.
type VersionNotes ¶ added in v2.2.0
type VersionNotes interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getversionnotes GetVersionNotes(ctx context.Context, params GetVersionNotesRequest) (*GetVersionNotesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putversionnotes UpdateVersionNotes(ctx context.Context, params UpdateVersionNotesRequest) (*UpdateVersionNotesResponse, error) }
The VersionNotes interface supports retrieving and modifying the version notes for a configuration and version.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#versionnotesgroup
type WAFMode ¶
type WAFMode interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmode // Deprecated: this method will be removed in a future release. Use GetWAFMode instead. GetWAFModes(ctx context.Context, params GetWAFModesRequest) (*GetWAFModesResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getmode GetWAFMode(ctx context.Context, params GetWAFModeRequest) (*GetWAFModeResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putmode UpdateWAFMode(ctx context.Context, params UpdateWAFModeRequest) (*UpdateWAFModeResponse, error) }
The WAFMode interface supports retrieving and modifying the mode setting that determines how rule sets are upgraded.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#mode
type WAFProtection ¶
type WAFProtection interface { // GetWAFProtections retrieves the current WAF protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections // Deprecated: this method will be removed in a future release. Use GetWAFProtection instead. GetWAFProtections(ctx context.Context, params GetWAFProtectionsRequest) (*GetWAFProtectionsResponse, error) // GetWAFProtection retrieves the current WAF protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getprotections GetWAFProtection(ctx context.Context, params GetWAFProtectionRequest) (*GetWAFProtectionResponse, error) // UpdateWAFProtection updates the WAF protection setting for a configuration and policy. // // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putprotections UpdateWAFProtection(ctx context.Context, params UpdateWAFProtectionRequest) (*UpdateWAFProtectionResponse, error) }
The WAFProtection interface supports retrieving and updating application layer protection for a configuration and policy.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#protections
type WAPBypassNetworkLists ¶ added in v2.12.0
type WAPBypassNetworkLists interface { // https://developer.akamai.com/api/cloud_security/application_security/v1.html#getbypassnetworklistsforawapconfigversion GetWAPBypassNetworkLists(ctx context.Context, params GetWAPBypassNetworkListsRequest) (*GetWAPBypassNetworkListsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putbypassnetworklistsforawapconfigversion UpdateWAPBypassNetworkLists(ctx context.Context, params UpdateWAPBypassNetworkListsRequest) (*UpdateWAPBypassNetworkListsResponse, error) // https://developer.akamai.com/api/cloud_security/application_security/v1.html#putbypassnetworklistsforawapconfigversion RemoveWAPBypassNetworkLists(ctx context.Context, params RemoveWAPBypassNetworkListsRequest) (*RemoveWAPBypassNetworkListsResponse, error) }
The WAPBypassNetworkLists interface supports listing or modifying which network lists are used in the bypass network lists settings.
https://developer.akamai.com/api/cloud_security/application_security/v1.html#bypassnetworklist
type WAPSelectedHostnames ¶ added in v2.6.0
type WAPSelectedHostnames interface { GetWAPSelectedHostnames(ctx context.Context, params GetWAPSelectedHostnamesRequest) (*GetWAPSelectedHostnamesResponse, error) UpdateWAPSelectedHostnames(ctx context.Context, params UpdateWAPSelectedHostnamesRequest) (*UpdateWAPSelectedHostnamesResponse, error) }
The WAPSelectedHostnames interface supports retrieving and modifying the list of hostnames protected under a configuration and security policy.
type WebApplicationFirewallEvaluation ¶ added in v2.3.0
type WebApplicationFirewallEvaluation struct { AttackGroupActions []struct { Action string `json:"action"` Group string `json:"group"` Exception *RuleException `json:"exception,omitempty"` AdvancedExceptionsList *AdvancedExceptions `json:"advancedExceptions,omitempty"` } `json:"attackGroupActions,omitempty"` EvaluationID int `json:"evaluationId"` EvaluationVersion int `json:"evaluationVersion"` RuleActions []struct { Action string `json:"action"` ID int `json:"id"` Conditions *RuleConditions `json:"conditions,omitempty"` Exception *RuleException `json:"exception,omitempty"` AdvancedExceptionsList *AdvancedExceptions `json:"advancedExceptions,omitempty"` } `json:"ruleActions,omitempty"` RulesetVersionID int `json:"rulesetVersionId"` }
WebApplicationFirewallEvaluation is returned as part of GetExportConfigurationResponse.
Source Files ¶
- activations.go
- advanced_settings_evasive_path_match.go
- advanced_settings_logging.go
- advanced_settings_pragma_header.go
- advanced_settings_prefetch.go
- api_constraints_protection.go
- api_endpoints.go
- api_hostname_coverage.go
- api_hostname_coverage_match_targets.go
- api_hostname_coverage_overlapping.go
- api_request_constraints.go
- appsec.go
- attack_group.go
- bypass_network_lists.go
- common_const.go
- configuration.go
- configuration_clone.go
- configuration_version.go
- configuration_version_clone.go
- contracts_groups.go
- custom_deny.go
- custom_rule.go
- custom_rule_action.go
- errors.go
- eval.go
- eval_group.go
- eval_host.go
- eval_penalty_box.go
- eval_protect_host.go
- eval_rule.go
- export_configuration.go
- failover_hostnames.go
- ip_geo.go
- ip_geo_protection.go
- malware_content_types.go
- malware_policy.go
- malware_policy_action.go
- malware_protection.go
- match_target.go
- match_target_sequence.go
- network_layer_protection.go
- penalty_box.go
- rate_policy.go
- rate_policy_action.go
- rate_protection.go
- reputation_analysis.go
- reputation_profile.go
- reputation_profile_action.go
- reputation_protection.go
- rule.go
- rule_upgrade.go
- security_policy.go
- security_policy_clone.go
- security_policy_protections.go
- selectable_hostnames.go
- selected_hostname.go
- siem_definitions.go
- siem_settings.go
- slow_post_protection_setting.go
- slowpost_protection.go
- threat_intel.go
- tuning_recommendations.go
- version_notes.go
- waf_mode.go
- waf_protection.go
- wap_bypass_network_lists.go
- wap_selected_hostnames.go