🔐 Acceder a RDS desde EC2
Para que tu servidor web (EC2) acceda de forma segura a las credenciales almacenadas en Secrets Manager y pueda conectarse a tu base de datos RDS, es necesario asignar permisos adecuados mediante IAM.
Permitir que el servidor web acceda al secreto
Crear la política de IAM:
- Abrí la consola de IAM y andá a Policies (Políticas).
- Seleccioná Create Policy (Crear política).
- Hacé clic en Choose a service (Elegir un servicio) y buscá Secrets Manager.
- En Access level (Nivel de acceso), expandí Read y tildá GetSecretValue.
- En Resources (Recursos), dejá All resources (Todos los recursos) para este lab. En ambientes reales, limitá a los secretos específicos.
- Hacé clic en Next: Tags (Siguiente: Etiquetas), después en Next: Review (Siguiente: Revisar).
- Nombrá la política: ReadSecrets. Confirmá y creá la política.
Asignar la política al rol de EC2:
- En IAM, andá a Roles y buscá el rol de tu instancia (por ejemplo,
SSMinstanceProfile). - Editá el rol, seleccioná Attach policies (Adjuntar políticas).
- Buscá y seleccioná ReadSecrets, luego adjuntá la política.
- Verificá que el rol ahora tenga AmazonSSMManagedInstanceCore y ReadSecrets.
- En IAM, andá a Roles y buscá el rol de tu instancia (por ejemplo,
Probar la conexión desde EC2
- Accedé a la consola de EC2 y localizá la IP pública de tu servidor web.
- Abrí la IP en tu navegador y verificá que la aplicación puede leer el secreto y conectarse a la base de datos RDS.
- Probá agregar, editar y borrar datos usando la aplicación.
Ahora tu servidor web EC2 puede recuperar credenciales desde AWS Secrets Manager y operar con la base de datos RDS usando buenas prácticas de seguridad y automatización.