

# AWS WAF Classic Regional Ejemplos de usando AWS CLI
<a name="cli_waf-regional_code_examples"></a>

En los siguientes ejemplos de código se muestra cómo realizar acciones e implementar escenarios comunes usando AWS Command Line Interface con AWS WAF Classic Regional.

Las *acciones* son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

**Topics**
+ [Acciones](#actions)

## Acciones
<a name="actions"></a>

### `associate-web-acl`
<a name="waf-regional_AssociateWebAcl_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `associate-web-acl`.

**AWS CLI**  
**Para asociar una ACL web con un recurso**  
El siguiente comando `associate-web-acl` asocia una ACL web, especificada por web-acl-id, con un recurso, especificado por resource-arn. El ARN del recurso puede hacer referencia a un Equilibrador de carga de aplicación o a una puerta de enlace de la API:  

```
aws waf-regional associate-web-acl \
    --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --resource-arn 12cs345-67cd-890b-1cd2-c3a4567d89f1
```
Para obtener más información, consulte [Trabajar con ACL web](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-working-with.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [AssociateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/associate-web-acl.html) en la *Referencia de comandos de la AWS CLI*. 

### `put-logging-configuration`
<a name="waf-regional_PutLoggingConfiguration_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `put-logging-configuration`.

**AWS CLI**  
**Para crear una configuración de registro para el ARN de ACL web con el ARN de flujo de Kinesis Firehose especificado**  
En el siguiente ejemplo de `put-logging-configuration`, se muestra la configuración de registro para WAF con ALB/APIGateway en la región `us-east-1`.  

```
aws waf-regional put-logging-configuration \
    --logging-configuration ResourceArn=arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3,LogDestinationConfigs=arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream,RedactedFields=[] \
    --region us-east-1
```
Salida:  

```
{
    "LoggingConfiguration": {
        "ResourceArn": "arn:aws:waf-regional:us-east-1:123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3",
        "LogDestinationConfigs": [
            "arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream"
        ]
    }
}
```
+  Para obtener información sobre la API, consulte [PutLoggingConfiguration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/put-logging-configuration.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-byte-match-set`
<a name="waf-regional_UpdateByteMatchSet_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-byte-match-set`.

**AWS CLI**  
**Para actualizar un conjunto de coincidencias de bytes**  
El siguiente comando `update-byte-match-set` elimina un objeto `ByteMatchTuple` (filtro) de un `ByteMatchSet`. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entre comillas simples.  

```
aws waf-regional update-byte-match-set \
    --byte-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates 'Action="DELETE",ByteMatchTuple={FieldToMatch={Type="HEADER",Data="referer"},TargetString="badrefer1",TextTransformation="NONE",PositionalConstraint="CONTAINS"}'
```
Para obtener más información, consulte [Trabajar con condiciones de coincidencia de cadena](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-string-conditions.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información acerca de la API, consulte [UpdateByteMatchSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-byte-match-set.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-ip-set`
<a name="waf-regional_UpdateIpSet_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-ip-set`.

**AWS CLI**  
**Para actualizar un conjunto de IP**  
El siguiente comando `update-ip-set` actualiza un IPSet con una dirección IPv4 y elimina una dirección IPv6. Para obtener el valor de `change-token`, ejecute el comando `get-change-token`. Como el valor para las actualizaciones tiene comillas dobles incrustadas, debe escribir el valor entre comillas simples.  

```
aws waf update-ip-set \
    --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates 'Action="INSERT",IPSetDescriptor={Type="IPV4",Value="12.34.56.78/16"},Action="DELETE",IPSetDescriptor={Type="IPV6",Value="1111:0000:0000:0000:0000:0000:0000:0111/128"}'
```
Como alternativa, puede utilizar un archivo JSON para especificar la entrada. Por ejemplo:  

```
aws waf-regional update-ip-set \
    --ip-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1  \
    --updates file://change.json
```
Contenido del `change.json`  

```
[
    {
        "Action": "INSERT",
        "IPSetDescriptor":
        {
            "Type": "IPV4",
            "Value": "12.34.56.78/16"
        }
    },
    {
        "Action": "DELETE",
        "IPSetDescriptor":
        {
            "Type": "IPV6",
            "Value": "1111:0000:0000:0000:0000:0000:0000:0111/128"
        }
    }
]
```
Para obtener más información, consulte [Trabajar con condiciones de coincidencia de IP](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-ip-conditions.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateIpSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-ip-set.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-rule`
<a name="waf-regional_UpdateRule_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-rule`.

**AWS CLI**  
**Para actualizar una regla**  
El siguiente comando `update-rule` elimina un objeto `Predicate` de una regla. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entero entre comillas simples.  

```
aws waf-regional update-rule \
    --rule-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates 'Action="DELETE",Predicate={Negated=false,Type="ByteMatch",DataId="MyByteMatchSetID"}'
```
Para obtener más información, consulte [Trabajar con reglas](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-rules.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-rule.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-size-constraint-set`
<a name="waf-regional_UpdateSizeConstraintSet_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-size-constraint-set`.

**AWS CLI**  
**Para actualizar un conjunto de restricciones de tamaño**  
El siguiente comando `update-size-constraint-set` elimina un objeto SizeConstraint (filtros) de un conjunto de restricciones de tamaño. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entero entre comillas simples.  

```
aws waf-regional update-size-constraint-set \
    --size-constraint-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates 'Action="DELETE",SizeConstraint={FieldToMatch={Type="QUERY_STRING"},TextTransformation="NONE",ComparisonOperator="GT",Size=0}'
```
Para obtener más información, consulte [Trabajar con condiciones de restricción de tamaño](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-size-conditions.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateSizeConstraintSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-size-constraint-set.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-sql-injection-match-set`
<a name="waf-regional_UpdateSqlInjectionMatchSet_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-sql-injection-match-set`.

**AWS CLI**  
**Para actualizar un conjunto de coincidencias de inyección de código SQL**  
El siguiente comando `update-sql-injection-match-set` elimina un objeto `SqlInjectionMatchTuple` (filtros) de un conjunto de coincidencias de inyección de código SQL. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entero entre comillas simples.  
aws waf-regional update-sql-injection-match-set --sql-injection-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 --updates 'Action="DELETE",SqlInjectionMatchTuple=\$1FieldToMatch=\$1Type="QUERY\$1STRING"\$1,TextTransformation="URL\$1DECODE"\$1'  
Para obtener más información, consulte [Trabajar con condiciones de coincidencia de inyección de código SQL](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-sql-conditions.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateSqlInjectionMatchSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-sql-injection-match-set.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-web-acl`
<a name="waf-regional_UpdateWebAcl_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-web-acl`.

**AWS CLI**  
**Para actualizar una ACL web**  
El siguiente comando `update-web-acl` elimina un objeto `ActivatedRule` de una WebACL. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entero entre comillas simples.  

```
aws waf-regional update-web-acl \
    --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates Action="DELETE",ActivatedRule='{Priority=1,RuleId="WAFRule-1-Example",Action={Type="ALLOW"},Type="ALLOW"}'
```
Para obtener más información, consulte [Trabajar con ACL web](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-working-with.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateWebAcl](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-web-acl.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-xss-match-set`
<a name="waf-regional_UpdateXssMatchSet_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-xss-match-set`.

**AWS CLI**  
**Para actualizar un XSSMatchSet**  
El siguiente comando `update-xss-match-set` elimina un objeto `XssMatchTuple` (filtros) de un `XssMatchSet`. Como el valor `updates` tiene comillas dobles incrustadas, debe escribir el valor entero entre comillas simples.  

```
aws waf-regional update-xss-match-set \
    --xss-match-set-id a123fae4-b567-8e90-1234-5ab67ac8ca90 \
    --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 \
    --updates 'Action="DELETE",XssMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}'
```
Para obtener más información, consulte [Trabajar con condiciones de coincidencia de scripting entre sitios](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-xss-conditions.html) en la *Guía para desarrolladores de AWS WAF*.  
+  Para obtener información sobre la API, consulte [UpdateXssMatchSet](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/waf-regional/update-xss-match-set.html) en la *Referencia de comandos de la AWS CLI*. 