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:
-
register-scalable-target para etiquetar nuevos destinos escalables cuando los registre.
-
tag-resource para agregar etiquetas a un destino escalable existente.
-
list-tags-for-resource para devolver las etiquetas en un destino escalable.
-
untag-resource para eliminar una etiqueta.
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-dimensiondimension
\ --resource-ididentifier
\ --min-capacity1
--max-capacity10
\ --tagsenvironment
=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/
para permitir (o denegar) acciones de los usuarios en destinos escalables con etiquetas específicas.tag-key
:tag-value
-
Utilice
aws:RequestTag/
para exigir que una etiqueta específica esté presente o no en una solicitud.tag-key
:tag-value
-
Utilice
aws:TagKeys [
para exigir que las claves de etiqueta específicas estén presentes o no en una solicitud.tag-key
, ...]
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
de destinos escalables.temporary
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "application-autoscaling:UntagResource", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": ["
temporary
"] } } } ] }