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 ABACcon 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 ABACcon AWS Glue.