

# Uso de etiquetas con buckets de directorio de S3
<a name="directory-buckets-tagging"></a>

Una etiqueta de AWS es un par clave-valor que contiene metadatos acerca de los recursos, en este caso buckets de directorio de Amazon S3. Puede etiquetar los buckets de directorio de S3 al crearlos o administrar las etiquetas de los buckets de directorio existentes. Para obtener información general sobre las etiquetas, consulte [Etiquetado para la asignación de costos o el control de acceso basado en atributos (ABAC)](tagging.md).

**nota**  
No se aplican cargos adicionales por el uso de etiquetas en buckets de directorio más allá de las tarifas estándar de solicitud de API de S3. Para obtener más información, consulte [Precios de Amazon S3](https://aws.amazon.com/s3/pricing/).

## Formas habituales de utilizar etiquetas con buckets de directorio
<a name="common-ways-to-use-tags-directory-bucket"></a>

Utilice etiquetas en los buckets de directorio de S3 para:

1. **Asignación de costos**: realice un seguimiento de los costos de almacenamiento por etiqueta de bucket en Administración de facturación y costos de AWS. Para obtener más información, consulte [Uso de etiquetas de asignación de costos](https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-cost-allocation).

1. **Control de acceso basado en atributos (ABAC)**: escale los permisos de acceso y conceda acceso a los buckets de directorio de S3 en función de las etiquetas. Para obtener más información, consulte [Uso de etiquetas para ABAC](https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-abac).

**nota**  
Puede usar las mismas etiquetas para la asignación de costos y para el control de acceso.

### ABAC para buckets de directorio de S3
<a name="abac-for-directory-buckets"></a>

Los buckets de directorio de Amazon S3 admiten el control de acceso basado en atributos (ABAC) mediante etiquetas. Utilice claves de condición basadas en etiquetas en las políticas de bucket de organizaciones, IAM y directorio de S3 de AWS. Para las empresas, ABAC en Amazon S3 admite la autorización en varias cuentas de AWS. 

En sus políticas de IAM, puede controlar el acceso a los buckets de directorio de S3 en función de las etiquetas del bucket mediante las siguientes [claves de condición globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys):
+ `aws:ResourceTag/key-name`
  + Utilice esta clave para comparar el par clave-valor de etiqueta que especifique en la política con el par clave-valor asociado al recurso. Por ejemplo, puede requerir que el acceso a un recurso solo se permita si el recurso tiene la clave de etiqueta `Dept` adjunta con el valor `Marketing`. Para obtener más información, consulte [Control del acceso a los recursos de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-resources).
+ `aws:RequestTag/key-name`
  + Utilice esta clave para comparar el par clave-valor de etiqueta que se transfirió en la solicitud con el par de etiquetas especificado en la política. Por ejemplo, podría comprobar si la solicitud incluya la clave de etiqueta `Dept` y que tenga el valor `Accounting`. Para obtener más información, consulte [Control del acceso durante solicitudes de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-requests). Puede utilizar esta clave de condición para restringir qué pares de clave-valor de etiqueta se pueden pasar durante las operaciones de API `TagResource` y `CreateBucket`.
+ `aws:TagKeys`
  + Utilice esta clave para comparar las claves de etiqueta de una solicitud con las claves que especifique en la política. Como práctica recomendada cuando utilice políticas para controlar el acceso mediante etiquetas, utilice la clave de condición `aws:TagKeys` para definir lo que se permite realizar a las claves de etiqueta. Para obtener más información y políticas de ejemplo, consulte [Control del acceso en función de las claves de etiqueta](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-tag-keys). Puede crear un bucket de directorio de S3 con etiquetas. Para permitir el etiquetado durante la operación de API `CreateBucket`, debe crear una política que incluya las acciones `s3express:TagResource` y `s3express:CreateBucket`. A continuación, puede utilizar la clave de condición `aws:TagKeys` para imponer el uso de etiquetas específicas en la solicitud `CreateBucket`.
+ `s3express:BucketTag/tag-key`
  + Use esta clave de condición para conceder permisos a datos específicos en buckets de directorio mediante etiquetas. Al acceder a un bucket de directorio mediante un punto de acceso, esta clave de condición hace referencia a las etiquetas del bucket de directorio al autorizar contra el punto de acceso y contra el bucket de directorio, mientras que `aws:ResourceTag/tag-key` hará referencia solo a las etiquetas del recurso contra el que se está autorizando. 

### Ejemplo de políticas de ABAC para buckets de directorio
<a name="example-directory-buckets-abac-policies"></a>

Consulte los siguientes ejemplos de políticas de ABAC para buckets de directorio de Amazon S3.

#### 1.1: Política de IAM para crear o modificar buckets con etiquetas específicas
<a name="example-user-policy-request-tag"></a>

En esta política de IAM, los usuarios o roles con esta política solo pueden crear buckets de directorio de S3 si etiquetan el bucket con la clave de etiqueta `project` y el valor de etiqueta `Trinity` en la solicitud de creación del bucket. También pueden agregar o modificar etiquetas en los buckets de directorio de S3 existentes, siempre que la solicitud de `TagResource` incluya el par clave-valor de etiqueta `project:Trinity`. Esta política no concede permisos de lectura, escritura o eliminación en los buckets ni en sus objetos. 

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "CreateBucketWithTags",
      "Effect": "Allow",
      "Action": [
        "s3express:CreateBucket",
        "s3express:TagResource"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestTag/project": [
            "{{Trinity}}"
          ]
        }
      }
    }
  ]
}
```

#### 1.2: Política de bucket para restringir las operaciones en el bucket mediante etiquetas
<a name="example-user-policy-resource-tag"></a>

En esta política de bucket, las entidades principales de IAM (usuarios y roles) pueden realizar operaciones utilizando la acción `CreateSession` en el bucket solo si el valor de la etiqueta `project` del bucket coincide con el valor de la etiqueta de `project` de la entidad principal.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowObjectOperations",
      "Effect": "Allow",
      "Principal": {
        "AWS": "{{111122223333}}"
      },
      "Action": "s3express:CreateSession",
      "Resource": "arn:aws::s3express:{{us-west-2}}:{{111122223333}}:bucket/{{{{amzn-s3-demo-bucket--usw2-az1--x-s3}}}}",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/project": "${aws:PrincipalTag/project}"
        }
      }
    }
  ]
}
```

#### 1.3: Política de IAM para modificar las etiquetas de los recursos existentes manteniendo la gobernanza del etiquetado
<a name="example-user-policy-tag-keys"></a>

En esta política de IAM, las entidades principales de IAM (usuarios o roles) solo pueden modificar las etiquetas de un bucket si el valor de la etiqueta `project` del bucket coincide con el valor de la etiqueta `project` de la entidad principal. Solo se permiten las cuatro etiquetas `project`, `environment`, `owner` y `cost-center` especificadas en las claves de condición `aws:TagKeys` para estos buckets de directorio. Esto ayuda a reforzar la gobernanza de las etiquetas, evita las modificaciones no autorizadas de las etiquetas y mantiene la coherencia del esquema de etiquetado en todos los buckets.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "EnforceTaggingRulesOnModification",
      "Effect": "Allow",
      "Action": [
        "s3express:TagResource"
      ],
      "Resource": "arn:aws::s3express:{{us-west-2}}:{{111122223333}}:bucket/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/project": "${aws:PrincipalTag/project}"
        },
        "ForAllValues:StringEquals": {
          "aws:TagKeys": [
            "{{project}}",
            "{{environment}}",
            "{{owner}}",
            "{{cost-center}}"
          ]
        }
      }
    }
  ]
}
```

#### 1.4: Uso de la clave de condición s3express:BucketTag
<a name="example-policy-bucket-tag"></a>

En esta política de IAM, la instrucción de condición permite el acceso a los datos del bucket solo si el bucket tiene la clave de etiqueta `Environment` y el valor de etiqueta `Production`. 

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowAccessToSpecificAccessPoint",
      "Effect": "Allow",
      "Action": "*",
      "Resource": "arn:aws::s3express:{{us-west-2}}:{{111122223333}}:accesspoint/*",
      "Condition": {
        "StringEquals": {
          "s3express:BucketTag/Environment": "Production"
        }
      }
    }
  ]
}
```

## Administración de etiquetas para buckets de directorio
<a name="working-with-tags"></a>

Puede agregar o administrar etiquetas para los buckets de directorio de S3 mediante la consola de Amazon S3, la interfaz de la línea de comandos (CLI) de AWS, los SDK de AWS o mediante las API de S3: [TagResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_TagResource.html), [UntagResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UntagResource.html) y [ListTagsForResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListTagsForResource.html). Para obtener más información, consulte:

**Topics**
+ [Formas habituales de utilizar etiquetas con buckets de directorio](#common-ways-to-use-tags-directory-bucket)
+ [Administración de etiquetas para buckets de directorio](#working-with-tags)
+ [Creación de buckets de directorio con etiquetas](directory-bucket-create-tag.md)
+ [Agregación de una etiqueta a un bucket de directorio](directory-bucket-tag-add.md)
+ [Visualización de etiquetas de buckets de directorio](directory-bucket-tag-view.md)
+ [Eliminación de una etiqueta de un bucket de directorio](directory-bucket-tag-delete.md)