WebACL

public struct WebACL : AWSShape

Undocumented

  • Declaration

    Swift

    public static var _members: [AWSShapeMember]
  • arn

    The Amazon Resource Name (ARN) of the Web ACL that you want to associate with the resource.

    Declaration

    Swift

    public let arn: String
  • The web ACL capacity units (WCUs) currently being used by this web ACL. AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.

    Declaration

    Swift

    public let capacity: Int64?
  • The action to perform if none of the Rules contained in the WebACL match.

    Declaration

    Swift

    public let defaultAction: DefaultAction
  • A description of the Web ACL that helps with identification. You cannot change the description of a Web ACL after you create it.

    Declaration

    Swift

    public let description: String?
  • id

    A unique identifier for the WebACL. This ID is returned in the responses to create and list commands. You use this ID to do things like get, update, and delete a WebACL.

    Declaration

    Swift

    public let id: String
  • Indicates whether this web ACL is managed by AWS Firewall Manager. If true, then only AWS Firewall Manager can delete the web ACL or any Firewall Manager rule groups in the web ACL.

    Declaration

    Swift

    public let managedByFirewallManager: Bool?
  • The name of the Web ACL. You cannot change the name of a Web ACL after you create it.

    Declaration

    Swift

    public let name: String
  • The last set of rules for AWS WAF to process in the web ACL. This is defined in an AWS Firewall Manager WAF policy and contains only rule group references. You can’t alter these. Any rules and rule groups that you define for the web ACL are prioritized before these. In the Firewall Manager WAF policy, the Firewall Manager administrator can define a set of rule groups to run first in the web ACL and a set of rule groups to run last. Within each set, the administrator prioritizes the rule groups, to determine their relative processing order.

    Declaration

    Swift

    public let postProcessFirewallManagerRuleGroups: [FirewallManagerRuleGroup]?
  • The first set of rules for AWS WAF to process in the web ACL. This is defined in an AWS Firewall Manager WAF policy and contains only rule group references. You can’t alter these. Any rules and rule groups that you define for the web ACL are prioritized after these. In the Firewall Manager WAF policy, the Firewall Manager administrator can define a set of rule groups to run first in the web ACL and a set of rule groups to run last. Within each set, the administrator prioritizes the rule groups, to determine their relative processing order.

    Declaration

    Swift

    public let preProcessFirewallManagerRuleGroups: [FirewallManagerRuleGroup]?
  • The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that AWS WAF uses to identify matching web requests, and parameters that govern how AWS WAF handles them.

    Declaration

    Swift

    public let rules: [Rule]?
  • Defines and enables Amazon CloudWatch metrics and web request sample collection.

    Declaration

    Swift

    public let visibilityConfig: VisibilityConfig
  • Undocumented

    Declaration

    Swift

    public init(arn: String, capacity: Int64? = nil, defaultAction: DefaultAction, description: String? = nil, id: String, managedByFirewallManager: Bool? = nil, name: String, postProcessFirewallManagerRuleGroups: [FirewallManagerRuleGroup]? = nil, preProcessFirewallManagerRuleGroups: [FirewallManagerRuleGroup]? = nil, rules: [Rule]? = nil, visibilityConfig: VisibilityConfig)