Compatibilidad de Application Auto Scaling con etiquetas - Aplicación de escalado automático

Compatibilidad de Application Auto Scaling con etiquetas

Puede utilizar la AWS CLI o un SDK para etiquetar los destinos escalables de Application Auto Scaling. Los destinos escalables son las entidades que representan los recursos de AWS o los recursos personalizados que Application Auto Scaling puede escalar.

Cada etiqueta es una marca que consta de una clave y un valor definidos por el usuario mediante la API de Application Auto Scaling. Las etiquetas pueden ayudarlo a configurar el acceso granular a destinos escalables específicos según las necesidades de su organización. Para obtener más información, consulte ABAC con Application Auto Scaling.

Puede agregar etiquetas a los nuevos destinos escalables al registrarlos o agregarlos a destinos escalables ya existentes.

Los comandos comúnmente utilizados para administrar etiquetas incluyen los siguientes:

Ejemplos de etiquetas

Utilice el comando register-scalable-target con la opción --tags. En este ejemplo se etiqueta un destino escalable con dos etiquetas: una clave de etiqueta denominadaenvironment con el valor de etiqueta production y una clave de etiqueta denominada iscontainerbased con el valor de etiqueta true.

Reemplace los valores de muestra --min-capacity y --max-capacity por --service-namespace con el espacio de nombres del servicio de AWS que está usando con Application Auto Scaling, --scalable-dimension por la dimensión escalable asociada al recurso que está registrando y --resource-id por un identificador del recurso. Para obtener más información y ejemplos de cada servicio, consulte los temas de Servicios de AWS que puede utilizar con Application Auto Scaling.

aws application-autoscaling register-scalable-target \ --service-namespace namespace \ --scalable-dimension dimension \ --resource-id identifier \ --min-capacity 1 --max-capacity 10 \ --tags environment=production,iscontainerbased=true

Si se ejecuta correctamente, este comando devolverá el ARN del destino escalable.

{ "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123" }
nota

Si este comando produce un error, asegúrese de haber actualizado la AWS CLI localmente a la versión más reciente.

Etiquetas para seguridad

Use etiquetas para comprobar que el solicitante (como un usuario o rol de IAM) tiene permisos para realizar determinadas acciones. Proporcione información de etiquetas en el elemento de condición de una política de IAM mediante una o más de las siguientes claves de condición:

  • Utilice aws:ResourceTag/tag-key: tag-value para permitir (o denegar) acciones de los usuarios en destinos escalables con etiquetas específicas.

  • Utilice aws:RequestTag/tag-key: tag-value para exigir que una etiqueta específica esté presente o no en una solicitud.

  • Utilice aws:TagKeys [tag-key, ...] para exigir que las claves de etiqueta específicas estén presentes o no en una solicitud.

Por ejemplo, la siguiente política de IAM concede permisos al usuario para las acciones siguientes: DeregisterScalableTarget, DeleteScalingPolicy y DeleteScheduledAction. Sin embargo, también deniega la acción si el destino escalable sobre el que se actúa tiene la etiqueta environment=production.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction" ], "Resource": "*" } }, { "Effect": "Deny", "Action": [ "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction" ], "Resource": "*", "Condition": { "StringEquals": {"aws:ResourceTag/environment": "production"} } } ] }

Control del acceso a las etiquetas

Utilice las etiquetas para comprobar que el solicitante (como un rol o usuario de IAM) tiene permisos para agregar, modificar o eliminar etiquetas para destinos escalables.

Por ejemplo, puede crear una política de IAM que permita eliminar solo la etiqueta con la clave temporary de destinos escalables.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "application-autoscaling:UntagResource", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": ["temporary"] } } } ] }