Etiquetas de AWS en AWS Glue - AWS Glue

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.

Etiquetas de AWS en AWS Glue

Para que le resulte más fácil administrar los recursos de AWS Glue, también puede asignar sus propias etiquetas a algunos tipos de recursos de AWS Glue. Una etiqueta es una marca que se asigna a un recurso de AWS. Cada etiqueta está formada por una clave y un valor opcional, ambos definidos por el usuario. Puede utilizar etiquetas de AWS Glue para organizar e identificar los recursos. Las etiquetas se pueden utilizar para crear informes de contabilidad de costos y restringir el acceso a los recursos. Si utiliza AWS Identity and Access Management, puede controlar qué usuarios de su cuenta de AWS tienen permiso para crear, editar o eliminar etiquetas. Además de los permisos para llamar a las API relacionadas con etiquetas, también necesita el permiso glue:GetConnection para llamar a las API de etiquetado en las conexiones y el permiso glue:GetDatabase para llamar a las API de etiquetado en las bases de datos. Para obtener más información, consulte ABAC con AWS Glue.

En AWS Glue, se pueden etiquetar los siguientes recursos:

  • Connection

  • Base de datos

  • Rastreador

  • Sesión interactiva

  • Punto de enlace de desarrollo

  • Trabajo

  • Desencadenador

  • Flujo de trabajo

  • Esquema

  • Transformación de machine learning

  • Conjunto de reglas de calidad de datos

  • Esquemas de streaming

  • Registros de esquemas de streaming

nota

Como práctica recomendada, para permitir el etiquetado de estos recursos de AWS Glue, incluya siempre la acción glue:TagResource en sus políticas.

Cuando utilice etiquetas con AWS Glue, tenga en cuenta lo siguiente:

  • Se permite un máximo de 50 etiquetas por entidad.

  • En AWS Glue, debe especificar etiquetas como una lista de pares clave-valor con el formato {"string": "string" ...}

  • Al crear una etiqueta en un objeto, la clave de etiqueta es obligatoria y el valor de la etiqueta es opcional.

  • La clave y el valor de la etiqueta distinguen entre mayúsculas y minúsculas.

  • La clave de etiqueta y el valor de etiqueta no deben contener el prefijo aws. No se permiten operaciones en este tipo de etiquetas.

  • La longitud máxima de la clave de etiqueta es de 128 caracteres Unicode en UTF-8. La clave de etiqueta no debe estar vacía ni ser nula.

  • La longitud máxima del valor de etiqueta es de 256 caracteres Unicode en UTF-8. El valor de etiqueta puede estar vacío o ser nulo.

Compatibilidad con el etiquetado en conexiones de AWS Glue

Puede restringir los permisos de la acción CreateConnection, UpdateConnection, GetConnection y DeleteConnection en función de la etiqueta de recurso. Esto permite implementar el control de acceso de privilegio mínimo en trabajos de AWS Glue con orígenes de datos JDBC que necesitan obtener información de conexión JDBC de Data Catalog.

Ejemplo de uso

Creación de una conexión AWS Glue con la etiqueta ["connection-category", "dev-test"].

Especifique la condición de etiqueta para la acción GetConnection en la política de IAM.

{ "Effect": "Allow", "Action": [ "glue:GetConnection" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:ResourceTag/tagKey": "dev-test" } } }

Ejemplos

Los siguientes ejemplos crean un trabajo con etiquetas asignadas.

AWS CLI

aws glue create-job --name job-test-tags --role MyJobRole --command Name=glueetl,ScriptLocation=S3://aws-glue-scripts//prod-job1 --tags key1=value1,key2=value2

AWS CloudFormation JSON

{ "Description": "AWS Glue Job Test Tags", "Resources": { "MyJobRole": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Action": [ "sts:AssumeRole" ] } ] }, "Path": "/", "Policies": [ { "PolicyName": "root", "PolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" } ] } } ] } }, "MyJob": { "Type": "AWS::Glue::Job", "Properties": { "Command": { "Name": "glueetl", "ScriptLocation": "s3://aws-glue-scripts//prod-job1" }, "DefaultArguments": { "--job-bookmark-option": "job-bookmark-enable" }, "ExecutionProperty": { "MaxConcurrentRuns": 2 }, "MaxRetries": 0, "Name": "cf-job1", "Role": { "Ref": "MyJobRole", "Tags": { "key1": "value1", "key2": "value2" } } } } } }

AWS CloudFormation YAML

Description: AWS Glue Job Test Tags Resources: MyJobRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: - glue.amazonaws.com Action: - sts:AssumeRole Path: "/" Policies: - PolicyName: root PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: "*" Resource: "*" MyJob: Type: AWS::Glue::Job Properties: Command: Name: glueetl ScriptLocation: s3://aws-glue-scripts//prod-job1 DefaultArguments: "--job-bookmark-option": job-bookmark-enable ExecutionProperty: MaxConcurrentRuns: 2 MaxRetries: 0 Name: cf-job1 Role: Ref: MyJobRole Tags: key1: value1 key2: value2

Para obtener más información, consulte Estrategias de etiquetado de AWS.

Para obtener más información acerca de cómo controlar el acceso con etiquetas, consulte ABAC con AWS Glue.