Learn R Programming

paws.security.identity (version 0.7.0)

wafv2: AWS WAFV2

Description

WAF

This is the latest version of the WAF API, released in November, 2019. The names of the entities that you use to access this API, like endpoints and namespaces, all have the versioning information added, like "V2" or "v2", to distinguish from the prior version. We recommend migrating your resources to this version, because it has a number of significant improvements.

If you used WAF prior to this release, you can't use this WAFV2 API to access any WAF resources that you created before. You can access your old rules, web ACLs, and other WAF resources only through the WAF Classic APIs. The WAF Classic APIs have retained the prior names, endpoints, and namespaces.

For information, including how to migrate your WAF resources to this version, see the WAF Developer Guide.

WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to an Amazon CloudFront distribution, Amazon API Gateway REST API, Application Load Balancer, AppSync GraphQL API, Amazon Cognito user pool, App Runner service, or Amazon Web Services Verified Access instance. WAF also lets you control access to your content, to protect the Amazon Web Services resource that WAF is monitoring. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, the protected resource responds to requests with either the requested content, an HTTP 403 status code (Forbidden), or with a custom response.

This API guide is for developers who need detailed information about WAF API actions, data types, and errors. For detailed information about WAF features and guidance for configuring and using WAF, see the WAF Developer Guide.

You can make calls using the endpoints listed in WAF endpoints and quotas.

  • For regional applications, you can use any of the endpoints in the list. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

  • For Amazon CloudFront applications, you must use the API endpoint listed for US East (N. Virginia): us-east-1.

Alternatively, you can use one of the Amazon Web Services SDKs to access an API that's tailored to the programming language or platform that you're using. For more information, see Amazon Web Services SDKs.

We currently provide two versions of the WAF API: this API and the prior versions, the classic WAF APIs. This new API provides the same functionality as the older versions, with the following major improvements:

  • You use one API for both global and regional applications. Where you need to distinguish the scope, you specify a Scope parameter and set it to CLOUDFRONT or REGIONAL.

  • You can define a web ACL or rule group with a single call, and update it with a single call. You define all rule specifications in JSON format, and pass them to your rule group or web ACL calls.

  • The limits WAF places on the use of rules more closely reflects the cost of running each type of rule. Rule groups include capacity settings, so you know the maximum cost of a rule group when you use it.

Usage

wafv2(config = list(), credentials = list(), endpoint = NULL, region = NULL)

Value

A client for the service. You can call the service's operations using syntax like svc$operation(...), where svc is the name you've assigned to the client. The available operations are listed in the Operations section.

Arguments

config

Optional configuration of credentials, endpoint, and/or region.

  • credentials:

    • creds:

      • access_key_id: AWS access key ID

      • secret_access_key: AWS secret access key

      • session_token: AWS temporary session token

    • profile: The name of a profile to use. If not given, then the default profile is used.

    • anonymous: Set anonymous credentials.

  • endpoint: The complete URL to use for the constructed client.

  • region: The AWS Region used in instantiating the client.

  • close_connection: Immediately close all HTTP connections.

  • timeout: The time in seconds till a timeout exception is thrown when attempting to make a connection. The default is 60 seconds.

  • s3_force_path_style: Set this to true to force the request to use path-style addressing, i.e. http://s3.amazonaws.com/BUCKET/KEY.

  • sts_regional_endpoint: Set sts regional endpoint resolver to regional or legacy https://docs.aws.amazon.com/sdkref/latest/guide/feature-sts-regionalized-endpoints.html

credentials

Optional credentials shorthand for the config parameter

  • creds:

    • access_key_id: AWS access key ID

    • secret_access_key: AWS secret access key

    • session_token: AWS temporary session token

  • profile: The name of a profile to use. If not given, then the default profile is used.

  • anonymous: Set anonymous credentials.

endpoint

Optional shorthand for complete URL to use for the constructed client.

region

Optional shorthand for AWS Region used in instantiating the client.

Service syntax

svc <- wafv2(
  config = list(
    credentials = list(
      creds = list(
        access_key_id = "string",
        secret_access_key = "string",
        session_token = "string"
      ),
      profile = "string",
      anonymous = "logical"
    ),
    endpoint = "string",
    region = "string",
    close_connection = "logical",
    timeout = "numeric",
    s3_force_path_style = "logical",
    sts_regional_endpoint = "string"
  ),
  credentials = list(
    creds = list(
      access_key_id = "string",
      secret_access_key = "string",
      session_token = "string"
    ),
    profile = "string",
    anonymous = "logical"
  ),
  endpoint = "string",
  region = "string"
)

Operations

associate_web_aclAssociates a web ACL with a regional application resource, to protect the resource
check_capacityReturns the web ACL capacity unit (WCU) requirements for a specified scope and set of rules
create_api_keyCreates an API key that contains a set of token domains
create_ip_setCreates an IPSet, which you use to identify web requests that originate from specific IP addresses or ranges of IP addresses
create_regex_pattern_setCreates a RegexPatternSet, which you reference in a RegexPatternSetReferenceStatement, to have WAF inspect a web request component for the specified patterns
create_rule_groupCreates a RuleGroup per the specifications provided
create_web_aclCreates a WebACL per the specifications provided
delete_api_keyDeletes the specified API key
delete_firewall_manager_rule_groupsDeletes all rule groups that are managed by Firewall Manager for the specified web ACL
delete_ip_setDeletes the specified IPSet
delete_logging_configurationDeletes the LoggingConfiguration from the specified web ACL
delete_permission_policyPermanently deletes an IAM policy from the specified rule group
delete_regex_pattern_setDeletes the specified RegexPatternSet
delete_rule_groupDeletes the specified RuleGroup
delete_web_aclDeletes the specified WebACL
describe_all_managed_productsProvides high-level information for the Amazon Web Services Managed Rules rule groups and Amazon Web Services Marketplace managed rule groups
describe_managed_products_by_vendorProvides high-level information for the managed rule groups owned by a specific vendor
describe_managed_rule_groupProvides high-level information for a managed rule group, including descriptions of the rules
disassociate_web_aclDisassociates the specified regional application resource from any existing web ACL association
generate_mobile_sdk_release_urlGenerates a presigned download URL for the specified release of the mobile SDK
get_decrypted_api_keyReturns your API key in decrypted form
get_ip_setRetrieves the specified IPSet
get_logging_configurationReturns the LoggingConfiguration for the specified web ACL
get_managed_rule_setRetrieves the specified managed rule set
get_mobile_sdk_releaseRetrieves information for the specified mobile SDK release, including release notes and tags
get_permission_policyReturns the IAM policy that is attached to the specified rule group
get_rate_based_statement_managed_keysRetrieves the IP addresses that are currently blocked by a rate-based rule instance
get_regex_pattern_setRetrieves the specified RegexPatternSet
get_rule_groupRetrieves the specified RuleGroup
get_sampled_requestsGets detailed information about a specified number of requests--a sample--that WAF randomly selects from among the first 5,000 requests that your Amazon Web Services resource received during a time range that you choose
get_web_aclRetrieves the specified WebACL
get_web_acl_for_resourceRetrieves the WebACL for the specified resource
list_api_keysRetrieves a list of the API keys that you've defined for the specified scope
list_available_managed_rule_groupsRetrieves an array of managed rule groups that are available for you to use
list_available_managed_rule_group_versionsReturns a list of the available versions for the specified managed rule group
list_ip_setsRetrieves an array of IPSetSummary objects for the IP sets that you manage
list_logging_configurationsRetrieves an array of your LoggingConfiguration objects
list_managed_rule_setsRetrieves the managed rule sets that you own
list_mobile_sdk_releasesRetrieves a list of the available releases for the mobile SDK and the specified device platform
list_regex_pattern_setsRetrieves an array of RegexPatternSetSummary objects for the regex pattern sets that you manage
list_resources_for_web_aclRetrieves an array of the Amazon Resource Names (ARNs) for the regional resources that are associated with the specified web ACL
list_rule_groupsRetrieves an array of RuleGroupSummary objects for the rule groups that you manage
list_tags_for_resourceRetrieves the TagInfoForResource for the specified resource
list_web_ac_lsRetrieves an array of WebACLSummary objects for the web ACLs that you manage
put_logging_configurationEnables the specified LoggingConfiguration, to start logging from a web ACL, according to the configuration provided
put_managed_rule_set_versionsDefines the versions of your managed rule set that you are offering to the customers
put_permission_policyUse this to share a rule group with other accounts
tag_resourceAssociates tags with the specified Amazon Web Services resource
untag_resourceDisassociates tags from an Amazon Web Services resource
update_ip_setUpdates the specified IPSet
update_managed_rule_set_version_expiry_dateUpdates the expiration information for your managed rule set
update_regex_pattern_setUpdates the specified RegexPatternSet
update_rule_groupUpdates the specified RuleGroup
update_web_aclUpdates the specified WebACL

Examples

Run this code
if (FALSE) {
svc <- wafv2()
svc$associate_web_acl(
  Foo = 123
)
}

Run the code above in your browser using DataLab