Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

452
Views
Alternativa a la declaración preparada cuando se usa el proxy AWS RDS

Dice en la documentación del proxy RDS que la conexión se fija automáticamente cuando la aplicación usa una declaración preparada:

Las declaraciones preparadas hacen que el proxy fije la sesión. Esta regla se aplica ya sea que la declaración preparada use texto SQL o el protocolo binario. ( https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-proxy.html )

¿Cómo se supone que debo proteger mi aplicación contra las inyecciones de SQL mientras uso el proxy RDS? Estoy usando este servicio para hacer que la conexión con la base de datos sea más rápida en mis microservicios, por lo que quiero que se reutilice la conexión.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Yo tuve el mismo problema. Usé RDS Proxy para Postgresql RDS. Para conectarme a RDS Proxy, utilicé la gema 'pg' (proyecto en ruby).

Al principio, deshabilité algunas consultas iniciales a la base de datos cuando se estableció la conexión (como establecer la zona horaria, etc.).

Y el problema con una declaración preparada. El proxy rds fija la sesión si ve una consulta como la siguiente:

 SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

Entonces, si el proxy rds ve esa consulta, la sesión se fijará. Pero si realiza la consulta de esa manera, la sesión no se anclará:

 SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1

Entonces, cuando cambio un poco el código de mi biblioteca, resolví este problema. Y también será de gran ayuda si habilita los registros para el proxy rds (Configuración avanzada). Después de habilitar, puede ver por qué su sesión está anclada en Cloud Watch Metrics.

over 4 years ago · Santiago Trujillo Report

0

Traté de agregar ?binary_parameters=yes o &binary_parameters=yes a la cadena de conexión.

es decir

 postgres://user:password@rds-proxy.proxy-dgi349gjv95j.us-east-1.rds.amazonaws.com:5432/db_name?binary_parameters=yes

y vi una caída en las declaraciones prepared_statements ancladas.

Todavía no he seguido esa solución porque todavía estoy investigando si el proxy RDS sigue siendo la mejor opción para nuestro caso de uso.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!