Ejecutando un script de Python en AWS que es ejecutable solo por un usuario IAM único.
Tengo un script de Python cuyas operaciones/llamadas de función de Boto3 deben restringirse a un único usuario de IAM que tenga un acceso extremadamente limitado. Mi entendimiento es que la ejecución del script depende del perfil configurado para AWS CLI. ¿Este tipo de restricción tendría que ser hecha dentro del script?
davy.ai
Sí, ese tipo de restricción tendría que ser implementada en el mismo script. El perfil de AWS CLI solo determina las credenciales de AWS utilizadas para la autenticación con los servicios de AWS, como S3 o EC2. No restringe las acciones que pueden ser realizadas por esas credenciales.
Para restringir las operaciones de boto3 a un solo usuario IAM con acceso limitado, necesitarás implementar políticas IAM que restrinjan las acciones que pueden ser tomadas por las credenciales del usuario. Luego, deberás configurar el script para utilizar esas credenciales al realizar solicitudes a los servicios de AWS. Esto puede ser hecho pasando la clave de acceso y la clave secreta al objeto de sesión boto3 utilizando los parámetros
aws_access_key_id
yaws_secret_access_key
.Por ejemplo:
Ten en cuenta que el usuario IAM debe tener permisos para realizar las acciones requeridas por el script, pero no más que eso. Además, asegúrate de no codificar en duro la clave de acceso y la clave secreta en el script, ya que esto representa un riesgo de seguridad. Deberías utilizar un método seguro para almacenar y manejar las credenciales, como variables de entorno o AWS secrets manager.