class Azure::Network::Mgmt::V2020_03_01::Models::WebApplicationFirewallPolicy

Defines web application firewall policy.

Attributes

application_gateways[RW]

@return [Array<ApplicationGateway>] A collection of references to application gateways.

custom_rules[RW]

@return [Array<WebApplicationFirewallCustomRule>] The custom rules inside the policy.

etag[RW]

@return [String] A unique read-only string that changes whenever the resource is updated.

http_listeners[RW]

@return [Array<SubResource>] A collection of references to application gateway http listeners.

managed_rules[RW]

@return [ManagedRulesDefinition] Describes the managedRules structure.

path_based_rules[RW]

@return [Array<SubResource>] A collection of references to application gateway path rules.

policy_settings[RW]

@return [PolicySettings] The PolicySettings for policy.

provisioning_state[RW]

@return [ProvisioningState] The provisioning state of the web application firewall policy resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed'

resource_state[RW]

@return [WebApplicationFirewallPolicyResourceState] Resource status of the policy. Resource status of the policy. Possible values include: 'Creating', 'Enabling', 'Enabled', 'Disabling', 'Disabled', 'Deleting'

Public Class Methods

mapper() click to toggle source

Mapper for WebApplicationFirewallPolicy class as Ruby Hash. This will be used for serialization/deserialization.

# File lib/2020-03-01/generated/azure_mgmt_network/models/web_application_firewall_policy.rb, line 56
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'WebApplicationFirewallPolicy',
    type: {
      name: 'Composite',
      class_name: 'WebApplicationFirewallPolicy',
      model_properties: {
        id: {
          client_side_validation: true,
          required: false,
          serialized_name: 'id',
          type: {
            name: 'String'
          }
        },
        name: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'name',
          type: {
            name: 'String'
          }
        },
        type: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'type',
          type: {
            name: 'String'
          }
        },
        location: {
          client_side_validation: true,
          required: false,
          serialized_name: 'location',
          type: {
            name: 'String'
          }
        },
        tags: {
          client_side_validation: true,
          required: false,
          serialized_name: 'tags',
          type: {
            name: 'Dictionary',
            value: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        policy_settings: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.policySettings',
          type: {
            name: 'Composite',
            class_name: 'PolicySettings'
          }
        },
        custom_rules: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.customRules',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'WebApplicationFirewallCustomRuleElementType',
                type: {
                  name: 'Composite',
                  class_name: 'WebApplicationFirewallCustomRule'
                }
            }
          }
        },
        application_gateways: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.applicationGateways',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'ApplicationGatewayElementType',
                type: {
                  name: 'Composite',
                  class_name: 'ApplicationGateway'
                }
            }
          }
        },
        provisioning_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.provisioningState',
          type: {
            name: 'String'
          }
        },
        resource_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.resourceState',
          type: {
            name: 'String'
          }
        },
        managed_rules: {
          client_side_validation: true,
          required: true,
          serialized_name: 'properties.managedRules',
          type: {
            name: 'Composite',
            class_name: 'ManagedRulesDefinition'
          }
        },
        http_listeners: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.httpListeners',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'SubResourceElementType',
                type: {
                  name: 'Composite',
                  class_name: 'SubResource'
                }
            }
          }
        },
        path_based_rules: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.pathBasedRules',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'SubResourceElementType',
                type: {
                  name: 'Composite',
                  class_name: 'SubResource'
                }
            }
          }
        },
        etag: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'etag',
          type: {
            name: 'String'
          }
        }
      }
    }
  }
end