

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Habilitación de los registros de acceso del equilibrador de carga de red
<a name="enable-access-logs"></a>

Al habilitar el registro de acceso del balanceador de carga, debe especificar el nombre del bucket de S3 donde el balanceador de carga almacenará los logs. El bucket debe tener una política de bucket que conceda permiso a Elastic Load Balancing para escribir en el bucket.

**importante**  
Los registros de acceso se crean solo si el equilibrador de carga tiene un oyente TLS y si los registros contienen información acerca de las solicitudes de TLS únicamente.

## Requisitos del bucket
<a name="access-logging-bucket-requirements"></a>

Puede utilizar un bucket existente o crear uno específico para los registros de acceso. El bucket debe cumplir los siguientes requisitos.

**Requisitos**
+ El bucket debe estar ubicado en la misma región que el equilibrador de carga. El bucket y el equilibrador de carga pueden ser propiedad de diferentes cuentas.
+ El prefijo que especifique no debe incluir `AWSLogs`. Agregamos la parte del nombre de archivo que comienza por `AWSLogs` después del nombre del bucket y el prefijo que especifique.
+ El bucket debe tener una política que conceda permiso para escribir los registros de acceso en el bucket. Las políticas de bucket son colecciones de instrucciones JSON escritas en el lenguaje de la política de acceso para definir los permisos de acceso al bucket.

**Ejemplo de política de bucket**  
A continuación, se muestra una política de ejemplo. Para el `Resource` elementos, reemplazar {{amzn-s3-demo-destination-bucket}} con el nombre del bucket de S3 para tus registros de acceso. Asegúrese de omitir el {{Prefix/}} si no utiliza un prefijo de bucket. Para `aws:SourceAccount`, especifique el ID del AWS cuenta con el balanceador de cargas. Para `aws:SourceArn`, reemplazar {{region}} y {{012345678912}} con la región y el ID de cuenta del balanceador de cargas, respectivamente.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "AWSLogDeliveryWrite",
    "Statement": [
        {
            "Sid": "AWSLogDeliveryAclCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::{{amzn-s3-demo-destination-bucket}}",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": [
                        "{{012345678912}}"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:{{us-east-1}}:{{012345678912}}:*"
                    ]
                }
            }
        },
        {
            "Sid": "AWSLogDeliveryWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::{{amzn-s3-demo-destination-bucket}}/{{Prefix/}}AWSLogs/{{account-ID}}/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control",
                    "aws:SourceAccount": [
                        "{{012345678912}}"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:{{us-east-1}}:{{012345678912}}:*"
                    ]
                }
            }
        }
    ]
}
```

------<a name="access-log-bucket-encryption"></a>

**Cifrado**

Puede habilitar el cifrado del lado del servidor para su bucket de registro de acceso a Amazon S3 de una de las siguientes maneras:
+ Amazon S3-Managed Llaves (SSE-S3)
+ AWS KMS claves almacenadas en AWS Key Management Service (SSE-KMS) †

† Con los registros de acceso de Network Load Balancer, no puedes usar AWS las claves administradas, debes usar las claves administradas por el cliente.

Para obtener más información, consulte [Especificar el cifrado de Amazon S3 (SSE-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/specifying-s3-encryption.html) y [Especificar el cifrado del lado del servidor con AWS KMS (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/specifying-kms-encryption.html) en el *Guía del usuario de Amazon S3*.

La política de claves debe permitir al servicio cifrar y descifrar los registros. A continuación, se muestra una política de ejemplo.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "delivery.logs.amazonaws.com"
      },
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## Configuración de los registros de acceso
<a name="configure-access-logs"></a>

Utilice el siguiente procedimiento para configurar los registros de acceso para capturar información de solicitudes y entregar los archivos de registro al bucket de S3.

------
#### [ Console ]

**Para habilitar los registros de acceso**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, seleccione **Equilibradores de carga**.

1. Seleccione el nombre del equilibrador de carga para abrir la página de detalles.

1. En la pestaña **Atributos**, seleccione **Editar**.

1. Para la **Monitorización**, active los registros de **acceso**.

1. En **URI de S3**, ingrese el URI de S3 correspondiente a los archivos de registro. El URI que especifique depende de si utiliza un prefijo.
   + URI con el prefijo: s3://{{amzn-s3-demo-logging-bucket}}/{{logging-prefix}}
   + URI sin prefijo: s3://{{amzn-s3-demo-logging-bucket}}

1. Seleccione **Save changes (Guardar cambios)**.

------
#### [ AWS CLI ]

**Para habilitar los registros de acceso**  
Use el comando [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-load-balancer-attributes.html) con los atributos relacionados.

```
aws elbv2 modify-load-balancer-attributes \
    --load-balancer-arn {{load-balancer-arn}} \
    --attributes \
        Key=access_logs.s3.enabled,Value=true \
        Key=access_logs.s3.bucket,Value={{amzn-s3-demo-logging-bucket}} \
        Key=access_logs.s3.prefix,Value={{logging-prefix}}
```

------
#### [ CloudFormation ]

**Para habilitar los registros de acceso**  
Actualiza el [AWS::ElasticLoadBalancingV2:LoadBalancer](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-loadbalancer.html) recurso para incluir los atributos relacionados.

```
Resources:
  myLoadBalancer:
    Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
    Properties:
      Name: my-nlb
      Type: network
      Scheme: internal
      Subnets: 
        - !Ref subnet-AZ1
        - !Ref subnet-AZ2
      SecurityGroups: 
        - !Ref mySecurityGroup
      LoadBalancerAttributes: 
        - Key: "access_logs.s3.enabled"
          Value: "true"
        - Key: "access_logs.s3.bucket"
          Value: "{{amzn-s3-demo-logging-bucket}}"
        - Key: "access_logs.s3.prefix"
          Value: "{{logging-prefix}}"
```

------