diff --git a/profiles/preview/network/mgmt/network/models.go b/profiles/preview/network/mgmt/network/models.go index 0f5bd599ee51..670924b53802 100644 --- a/profiles/preview/network/mgmt/network/models.go +++ b/profiles/preview/network/mgmt/network/models.go @@ -85,6 +85,13 @@ const ( Enabled ApplicationGatewayCookieBasedAffinity = original.Enabled ) +type ApplicationGatewayCustomErrorStatusCode = original.ApplicationGatewayCustomErrorStatusCode + +const ( + HTTPStatus403 ApplicationGatewayCustomErrorStatusCode = original.HTTPStatus403 + HTTPStatus502 ApplicationGatewayCustomErrorStatusCode = original.HTTPStatus502 +) + type ApplicationGatewayFirewallMode = original.ApplicationGatewayFirewallMode const ( @@ -236,9 +243,10 @@ const ( type AzureFirewallNetworkRuleProtocol = original.AzureFirewallNetworkRuleProtocol const ( - Any AzureFirewallNetworkRuleProtocol = original.Any - TCP AzureFirewallNetworkRuleProtocol = original.TCP - UDP AzureFirewallNetworkRuleProtocol = original.UDP + Any AzureFirewallNetworkRuleProtocol = original.Any + ICMP AzureFirewallNetworkRuleProtocol = original.ICMP + TCP AzureFirewallNetworkRuleProtocol = original.TCP + UDP AzureFirewallNetworkRuleProtocol = original.UDP ) type AzureFirewallRCActionType = original.AzureFirewallRCActionType @@ -698,6 +706,14 @@ const ( TunnelConnectionStatusUnknown TunnelConnectionStatus = original.TunnelConnectionStatusUnknown ) +type VerbosityLevel = original.VerbosityLevel + +const ( + Full VerbosityLevel = original.Full + Minimum VerbosityLevel = original.Minimum + Normal VerbosityLevel = original.Normal +) + type VirtualNetworkGatewayConnectionProtocol = original.VirtualNetworkGatewayConnectionProtocol const ( @@ -833,7 +849,9 @@ type ApplicationGatewayBackendHealthServer = original.ApplicationGatewayBackendH type ApplicationGatewayBackendHTTPSettings = original.ApplicationGatewayBackendHTTPSettings type ApplicationGatewayBackendHTTPSettingsPropertiesFormat = original.ApplicationGatewayBackendHTTPSettingsPropertiesFormat type ApplicationGatewayConnectionDraining = original.ApplicationGatewayConnectionDraining +type ApplicationGatewayCustomError = original.ApplicationGatewayCustomError type ApplicationGatewayFirewallDisabledRuleGroup = original.ApplicationGatewayFirewallDisabledRuleGroup +type ApplicationGatewayFirewallExclusion = original.ApplicationGatewayFirewallExclusion type ApplicationGatewayFirewallRule = original.ApplicationGatewayFirewallRule type ApplicationGatewayFirewallRuleGroup = original.ApplicationGatewayFirewallRuleGroup type ApplicationGatewayFirewallRuleSet = original.ApplicationGatewayFirewallRuleSet @@ -941,6 +959,7 @@ type BgpServiceCommunityListResultPage = original.BgpServiceCommunityListResultP type BgpServiceCommunityPropertiesFormat = original.BgpServiceCommunityPropertiesFormat type BgpSettings = original.BgpSettings type ConfigurationDiagnosticParameters = original.ConfigurationDiagnosticParameters +type ConfigurationDiagnosticProfile = original.ConfigurationDiagnosticProfile type ConfigurationDiagnosticResponse = original.ConfigurationDiagnosticResponse type ConfigurationDiagnosticResult = original.ConfigurationDiagnosticResult type ConnectionMonitor = original.ConnectionMonitor @@ -1360,7 +1379,6 @@ type TopologyParameters = original.TopologyParameters type TopologyResource = original.TopologyResource type TrafficAnalyticsConfigurationProperties = original.TrafficAnalyticsConfigurationProperties type TrafficAnalyticsProperties = original.TrafficAnalyticsProperties -type TrafficQuery = original.TrafficQuery type TroubleshootingDetails = original.TroubleshootingDetails type TroubleshootingParameters = original.TroubleshootingParameters type TroubleshootingProperties = original.TroubleshootingProperties @@ -1744,6 +1762,9 @@ func PossibleApplicationGatewayBackendHealthServerHealthValues() []ApplicationGa func PossibleApplicationGatewayCookieBasedAffinityValues() []ApplicationGatewayCookieBasedAffinity { return original.PossibleApplicationGatewayCookieBasedAffinityValues() } +func PossibleApplicationGatewayCustomErrorStatusCodeValues() []ApplicationGatewayCustomErrorStatusCode { + return original.PossibleApplicationGatewayCustomErrorStatusCodeValues() +} func PossibleApplicationGatewayFirewallModeValues() []ApplicationGatewayFirewallMode { return original.PossibleApplicationGatewayFirewallModeValues() } @@ -1954,6 +1975,9 @@ func PossibleTransportProtocolValues() []TransportProtocol { func PossibleTunnelConnectionStatusValues() []TunnelConnectionStatus { return original.PossibleTunnelConnectionStatusValues() } +func PossibleVerbosityLevelValues() []VerbosityLevel { + return original.PossibleVerbosityLevelValues() +} func PossibleVirtualNetworkGatewayConnectionProtocolValues() []VirtualNetworkGatewayConnectionProtocol { return original.PossibleVirtualNetworkGatewayConnectionProtocolValues() } diff --git a/services/network/mgmt/2018-08-01/network/applicationgateways.go b/services/network/mgmt/2018-08-01/network/applicationgateways.go index 152a8ff4f7ba..b415dc23f9e7 100644 --- a/services/network/mgmt/2018-08-01/network/applicationgateways.go +++ b/services/network/mgmt/2018-08-01/network/applicationgateways.go @@ -132,6 +132,14 @@ func (client ApplicationGatewaysClient) CreateOrUpdate(ctx context.Context, reso Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.MaxRequestBodySize", Name: validation.InclusiveMaximum, Rule: int64(128), Chain: nil}, {Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.MaxRequestBodySize", Name: validation.InclusiveMinimum, Rule: 8, Chain: nil}, }}, + {Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.MaxRequestBodySizeInKb", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.MaxRequestBodySizeInKb", Name: validation.InclusiveMaximum, Rule: int64(128), Chain: nil}, + {Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.MaxRequestBodySizeInKb", Name: validation.InclusiveMinimum, Rule: 8, Chain: nil}, + }}, + {Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.FileUploadLimitInMb", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.FileUploadLimitInMb", Name: validation.InclusiveMaximum, Rule: int64(500), Chain: nil}, + {Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.FileUploadLimitInMb", Name: validation.InclusiveMinimum, Rule: 0, Chain: nil}, + }}, }}, {Target: "parameters.ApplicationGatewayPropertiesFormat.AutoscaleConfiguration", Name: validation.Null, Rule: false, Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.AutoscaleConfiguration.MinCapacity", Name: validation.Null, Rule: true, diff --git a/services/network/mgmt/2018-08-01/network/models.go b/services/network/mgmt/2018-08-01/network/models.go index 87617dd9a8af..da779d9c33b2 100644 --- a/services/network/mgmt/2018-08-01/network/models.go +++ b/services/network/mgmt/2018-08-01/network/models.go @@ -78,6 +78,22 @@ func PossibleApplicationGatewayCookieBasedAffinityValues() []ApplicationGatewayC return []ApplicationGatewayCookieBasedAffinity{Disabled, Enabled} } +// ApplicationGatewayCustomErrorStatusCode enumerates the values for application gateway custom error status +// code. +type ApplicationGatewayCustomErrorStatusCode string + +const ( + // HTTPStatus403 ... + HTTPStatus403 ApplicationGatewayCustomErrorStatusCode = "HttpStatus403" + // HTTPStatus502 ... + HTTPStatus502 ApplicationGatewayCustomErrorStatusCode = "HttpStatus502" +) + +// PossibleApplicationGatewayCustomErrorStatusCodeValues returns an array of possible values for the ApplicationGatewayCustomErrorStatusCode const type. +func PossibleApplicationGatewayCustomErrorStatusCodeValues() []ApplicationGatewayCustomErrorStatusCode { + return []ApplicationGatewayCustomErrorStatusCode{HTTPStatus403, HTTPStatus502} +} + // ApplicationGatewayFirewallMode enumerates the values for application gateway firewall mode. type ApplicationGatewayFirewallMode string @@ -398,6 +414,8 @@ type AzureFirewallNetworkRuleProtocol string const ( // Any ... Any AzureFirewallNetworkRuleProtocol = "Any" + // ICMP ... + ICMP AzureFirewallNetworkRuleProtocol = "ICMP" // TCP ... TCP AzureFirewallNetworkRuleProtocol = "TCP" // UDP ... @@ -406,7 +424,7 @@ const ( // PossibleAzureFirewallNetworkRuleProtocolValues returns an array of possible values for the AzureFirewallNetworkRuleProtocol const type. func PossibleAzureFirewallNetworkRuleProtocolValues() []AzureFirewallNetworkRuleProtocol { - return []AzureFirewallNetworkRuleProtocol{Any, TCP, UDP} + return []AzureFirewallNetworkRuleProtocol{Any, ICMP, TCP, UDP} } // AzureFirewallRCActionType enumerates the values for azure firewall rc action type. @@ -1377,6 +1395,23 @@ func PossibleTunnelConnectionStatusValues() []TunnelConnectionStatus { return []TunnelConnectionStatus{TunnelConnectionStatusConnected, TunnelConnectionStatusConnecting, TunnelConnectionStatusNotConnected, TunnelConnectionStatusUnknown} } +// VerbosityLevel enumerates the values for verbosity level. +type VerbosityLevel string + +const ( + // Full ... + Full VerbosityLevel = "Full" + // Minimum ... + Minimum VerbosityLevel = "Minimum" + // Normal ... + Normal VerbosityLevel = "Normal" +) + +// PossibleVerbosityLevelValues returns an array of possible values for the VerbosityLevel const type. +func PossibleVerbosityLevelValues() []VerbosityLevel { + return []VerbosityLevel{Full, Minimum, Normal} +} + // VirtualNetworkGatewayConnectionProtocol enumerates the values for virtual network gateway connection // protocol. type VirtualNetworkGatewayConnectionProtocol string @@ -2386,6 +2421,14 @@ type ApplicationGatewayConnectionDraining struct { DrainTimeoutInSec *int32 `json:"drainTimeoutInSec,omitempty"` } +// ApplicationGatewayCustomError customer error of an application gateway. +type ApplicationGatewayCustomError struct { + // StatusCode - Status code of the application gateway customer error. Possible values include: 'HTTPStatus403', 'HTTPStatus502' + StatusCode ApplicationGatewayCustomErrorStatusCode `json:"statusCode,omitempty"` + // CustomErrorPageURL - Error page URL of the application gateway customer error. + CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty"` +} + // ApplicationGatewayFirewallDisabledRuleGroup allows to disable rules within a rule group or an entire rule group. type ApplicationGatewayFirewallDisabledRuleGroup struct { // RuleGroupName - The name of the rule group that will be disabled. @@ -2394,6 +2437,16 @@ type ApplicationGatewayFirewallDisabledRuleGroup struct { Rules *[]int32 `json:"rules,omitempty"` } +// ApplicationGatewayFirewallExclusion allow to exclude some variable satisfy the condition for the WAF check +type ApplicationGatewayFirewallExclusion struct { + // MatchVariable - The variable to be excluded. + MatchVariable *string `json:"matchVariable,omitempty"` + // SelectorMatchOperator - When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to. + SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty"` + // Selector - When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to. + Selector *string `json:"selector,omitempty"` +} + // ApplicationGatewayFirewallRule a web application firewall rule. type ApplicationGatewayFirewallRule struct { // RuleID - The identifier of the web application firewall rule. @@ -2853,6 +2906,8 @@ type ApplicationGatewayHTTPListenerPropertiesFormat struct { RequireServerNameIndication *bool `json:"requireServerNameIndication,omitempty"` // ProvisioningState - Provisioning state of the HTTP listener resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. ProvisioningState *string `json:"provisioningState,omitempty"` + // CustomErrorConfigurations - Custom error configurations of the HTTP listener. + CustomErrorConfigurations *[]ApplicationGatewayCustomError `json:"customErrorConfigurations,omitempty"` } // ApplicationGatewayIPConfiguration IP configuration of an application gateway. Currently 1 public and 1 private @@ -3340,6 +3395,8 @@ type ApplicationGatewayPropertiesFormat struct { ResourceGUID *string `json:"resourceGuid,omitempty"` // ProvisioningState - Provisioning state of the application gateway resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. ProvisioningState *string `json:"provisioningState,omitempty"` + // CustomErrorConfigurations - Custom error configurations of the application gateway resource. + CustomErrorConfigurations *[]ApplicationGatewayCustomError `json:"customErrorConfigurations,omitempty"` } // ApplicationGatewayRedirectConfiguration redirect configuration of an application gateway. @@ -4162,6 +4219,12 @@ type ApplicationGatewayWebApplicationFirewallConfiguration struct { RequestBodyCheck *bool `json:"requestBodyCheck,omitempty"` // MaxRequestBodySize - Maxium request body size for WAF. MaxRequestBodySize *int32 `json:"maxRequestBodySize,omitempty"` + // MaxRequestBodySizeInKb - Maxium request body size in Kb for WAF. + MaxRequestBodySizeInKb *int32 `json:"maxRequestBodySizeInKb,omitempty"` + // FileUploadLimitInMb - Maxium file upload size in Mb for WAF. + FileUploadLimitInMb *int32 `json:"fileUploadLimitInMb,omitempty"` + // Exclusions - The exclusion list. + Exclusions *[]ApplicationGatewayFirewallExclusion `json:"exclusions,omitempty"` } // ApplicationSecurityGroup an application security group in a resource group. @@ -6132,8 +6195,24 @@ type BgpSettings struct { type ConfigurationDiagnosticParameters struct { // TargetResourceID - The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway. TargetResourceID *string `json:"targetResourceId,omitempty"` - // Queries - List of traffic queries. - Queries *[]TrafficQuery `json:"queries,omitempty"` + // VerbosityLevel - Verbosity level. Accepted values are 'Normal', 'Minimum', 'Full'. Possible values include: 'Normal', 'Minimum', 'Full' + VerbosityLevel VerbosityLevel `json:"verbosityLevel,omitempty"` + // Profiles - List of network configuration diagnostic profiles. + Profiles *[]ConfigurationDiagnosticProfile `json:"profiles,omitempty"` +} + +// ConfigurationDiagnosticProfile parameters to compare with network configuration. +type ConfigurationDiagnosticProfile struct { + // Direction - The direction of the traffic. Accepted values are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', 'Outbound' + Direction Direction `json:"direction,omitempty"` + // Protocol - Protocol to be verified on. Accepted values are '*', TCP, UDP. + Protocol *string `json:"protocol,omitempty"` + // Source - Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag. + Source *string `json:"source,omitempty"` + // Destination - Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag. + Destination *string `json:"destination,omitempty"` + // DestinationPort - Traffice destination port. Accepted values are '*', port (for example, 3389) and port range (for example, 80-100). + DestinationPort *string `json:"destinationPort,omitempty"` } // ConfigurationDiagnosticResponse results of network configuration diagnostic on the target resource. @@ -6145,8 +6224,8 @@ type ConfigurationDiagnosticResponse struct { // ConfigurationDiagnosticResult network configuration diagnostic result corresponded to provided traffic query. type ConfigurationDiagnosticResult struct { - TrafficQuery *TrafficQuery `json:"trafficQuery,omitempty"` - NetworkSecurityGroupResult *SecurityGroupResult `json:"networkSecurityGroupResult,omitempty"` + Profile *ConfigurationDiagnosticProfile `json:"profile,omitempty"` + NetworkSecurityGroupResult *SecurityGroupResult `json:"networkSecurityGroupResult,omitempty"` } // ConnectionMonitor parameters that define the operation to create a connection monitor. @@ -7595,8 +7674,10 @@ type ErrorResponse struct { // EvaluatedNetworkSecurityGroup results of network security group evaluation. type EvaluatedNetworkSecurityGroup struct { // NetworkSecurityGroupID - Network security group ID. - NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty"` - MatchedRule *MatchedRule `json:"matchedRule,omitempty"` + NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty"` + // AppliedTo - Resource ID of nic or subnet to which network security group is applied. + AppliedTo *string `json:"appliedTo,omitempty"` + MatchedRule *MatchedRule `json:"matchedRule,omitempty"` // RulesEvaluationResult - List of network security rules evaluation results. RulesEvaluationResult *[]SecurityRulesEvaluationResult `json:"rulesEvaluationResult,omitempty"` } @@ -19976,20 +20057,6 @@ type TrafficAnalyticsProperties struct { NetworkWatcherFlowAnalyticsConfiguration *TrafficAnalyticsConfigurationProperties `json:"networkWatcherFlowAnalyticsConfiguration,omitempty"` } -// TrafficQuery parameters to compare with network configuration. -type TrafficQuery struct { - // Direction - The direction of the traffic. Accepted values are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', 'Outbound' - Direction Direction `json:"direction,omitempty"` - // Protocol - Protocol to be verified on. Accepted values are '*', TCP, UDP. - Protocol *string `json:"protocol,omitempty"` - // Source - Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag. - Source *string `json:"source,omitempty"` - // Destination - Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag. - Destination *string `json:"destination,omitempty"` - // DestinationPort - Traffice destination port. Accepted values are '*', port (for example, 3389) and port range (for example, 80-100). - DestinationPort *string `json:"destinationPort,omitempty"` -} - // TroubleshootingDetails information gained from troubleshooting of specified resource. type TroubleshootingDetails struct { // ID - The id of the get troubleshoot operation. diff --git a/services/network/mgmt/2018-08-01/network/watchers.go b/services/network/mgmt/2018-08-01/network/watchers.go index 62d58ef355ab..429822f6291c 100644 --- a/services/network/mgmt/2018-08-01/network/watchers.go +++ b/services/network/mgmt/2018-08-01/network/watchers.go @@ -503,7 +503,7 @@ func (client WatchersClient) GetNetworkConfigurationDiagnostic(ctx context.Conte if err := validation.Validate([]validation.Validation{ {TargetValue: parameters, Constraints: []validation.Constraint{{Target: "parameters.TargetResourceID", Name: validation.Null, Rule: true, Chain: nil}, - {Target: "parameters.Queries", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + {Target: "parameters.Profiles", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { return result, validation.NewError("network.WatchersClient", "GetNetworkConfigurationDiagnostic", err.Error()) }