Utilice plantillas de inicialización para controlar la inicialización de instancias - Amazon Elastic Compute Cloud

Utilice plantillas de inicialización para controlar la inicialización de instancias

Puede especificar que los usuarios puedan iniciar instancias únicamente si usan una plantilla de inicialización y que solo puedan usar una plantilla de inicialización específica. También puede controlar quién puede crear, modificar, describir y eliminar plantillas de inicialización y versiones de las mismas.

Usar plantillas de inicialización para controlar los parámetros de inicialización

Una plantilla de inicialización puede contener algunos o todos los parámetros necesarios para iniciar una instancia. Al iniciar una instancia con una plantilla de inicialización, puede reemplazar parámetros especificados en dicha plantilla. También puede especificar parámetros adicionales que no están en la plantilla de inicialización.

nota

Durante la inicialización, no es posible eliminar parámetros de plantillas de inicialización (por ejemplo, no puede especificar un valor “null” en el parámetro). Para eliminar un parámetro, cree una nueva versión de la plantilla de inicialización sin el parámetro y úsela para iniciar la instancia.

Para iniciar instancias, los usuarios deben tener permisos de uso para la acción ec2:RunInstances. Los usuarios también deben disponer de permisos para crear o utilizar los recursos creados con la instancia o asociados a ella. Puede utilizar permisos de nivel de recurso para la acción ec2:RunInstances para controlar los parámetros de inicialización que pueden especificar los usuarios. También puede conceder permisos a los usuarios para iniciar una instancia con una plantilla de inicialización. Esto le permite administrar parámetros de inicialización en una plantilla de inicialización en lugar de en una política de IAM y usar una plantilla de inicialización como vehículo de autorización para iniciar instancias. Por ejemplo, puede especificar que los usuarios pueden iniciar instancias únicamente mediante una plantilla de inicialización y que solo deben usar una plantilla de inicialización específica. También puede controlar los parámetros de inicialización que los usuarios pueden omitir en la plantilla de inicialización. Para ver ejemplos de políticas, consulte Plantillas de lanzamiento.

Controlar el uso de las plantillas de inicialización

De forma predeterminada, los usuarios no tienen permisos para trabajar con plantillas de inicialización. Puede crear una política que conceda a los usuarios permisos para crear, modificar, describir y eliminar plantillas de inicialización y versiones de plantillas de inicialización. También puede aplicar permisos de nivel de recursos a algunas acciones de plantillas de inicialización para controlar la capacidad de un usuario de emplear recursos específicos en esas acciones. Para obtener más información, consulte los siguientes ejemplos de políticas: Ejemplo: Trabajar con plantillas de lanzamiento

Sea precavido a la hora de conceder permisos a los usuarios para utilizar las acciones ec2:CreateLaunchTemplate y ec2:CreateLaunchTemplateVersion. No puede usar los permisos de nivel de recursos para controlar qué recursos pueden especificar los usuarios en la plantilla de inicialización. Para restringir los recursos que se usan para iniciar una instancia, asegúrese de conceder permisos para crear plantillas de inicialización y versiones de las mismas solo a los administradores adecuados.

Problemas de seguridad importantes al utilizar plantillas de inicialización con flota de EC2 o Flota de spot

Para usar plantillas de inicialización, debe conceder permisos a los usuarios para crear, modificar, describir y eliminar plantillas de inicialización y versiones de plantillas de inicialización. Puede controlar quién puede crear plantillas de inicialización y iniciar versiones de plantillas al controlar el acceso a las acciones ec2:CreateLaunchTemplate y ec2:CreateLaunchTemplateVersion. También puede controlar el acceso a la acción ec2:ModifyLaunchTemplate para controlar quién puede modificar las plantillas de inicialización.

importante

Si una flota de EC2 o Flota de spot está configurada para utilizar la versión de la plantilla de inicialización más reciente o predeterminada, la flota no sabrá si la más reciente o la predeterminada se modificaron posteriormente para que apunten a una versión diferente de la plantilla de inicialización. Cuando se utiliza una versión diferente de la plantilla de inicialización para la versión más reciente o la predeterminada, Amazon EC2 no vuelve a comprobar los permisos para completar las acciones al iniciar nuevas instancias a fin de cumplir con la capacidad de destino de la flota. Esta es una consideración importante al conceder permisos a quién puede crear y administrar las versiones de la plantilla de inicialización; en particular, la acción ec2:ModifyLaunchTemplate que permite al usuario cambiar la versión de la plantilla de inicialización predeterminada.

Al conceder permiso a un usuario para utilizar las acciones de EC2 para las API de la plantilla de inicialización, también se concede el permiso iam:PassRole al usuario si crea o actualiza una flota de EC2 o una Flota de spot para que apunte a una versión diferente de la plantilla de inicialización que contenga un perfil de instancia (un contenedor para un rol de IAM). Esto significa que un usuario puede actualizar una plantilla de inicialización para transferir un rol de IAM a una instancia, incluso si no tiene el permiso iam:PassRole. Para obtener más información y una política de IAM de ejemplo, consulte Uso de un rol de IAM para conceder permisos a aplicaciones que se ejecutan en instancias de Amazon EC2 en la Guía del usuario de IAM.

Para obtener más información, consulte Controlar el uso de las plantillas de inicialización y Ejemplo: Trabajar con plantillas de lanzamiento.