About this project
it-programming / web-development
Open
Necesitamos optimizar nuestra infraestructura en Azure, principalmente mejorar la seguridad y eficiencia en el acceso a las credenciales y el consumo de nuestros servicios internos desde AKS. A continuación, detallo nuestra situación actual y los problemas que nos gustaría resolver:
Contexto de nuestra infraestructura:
• Servicios en Azure: AKS, Azure Cosmos for MongoDB, Azure PostgreSQL Flexible Server, Azure Service Bus, REDIS.
• Ambientes: Ambiente de pruebas (dev) y productivo (prod).
• ci/cd: github actions para ambos ambientes.
• Manejo de credenciales: Todas las credenciales están almacenadas en secrets de Kubernetes (codificadas en base64).
Problemas actuales:
1. Exposición de credenciales al trabajar localmente:
En nuestro ambiente de pruebas, tenemos un ingress público que permite acceder a nuestras APIs de manera local usando una ingress key. Esto nos obliga a entregar a los desarrolladores las credenciales de nuestras bases de datos y otros servicios (Service Bus, etc.) Para que las carguen como variables de entorno en su entorno local, lo cual representa un riesgo de seguridad considerable.
2. Optimización de conexiones a Cosmos DB, PostgreSQL y REDIS:
Actualmente, tanto Cosmos DB, Postgresql como redis, tienen sus endpoints expuestos a internet, lo que implica que nuestros pods dentro del clúster de aks tengan que salir a internet para consumir estos servicios, lo cual genera latencia, costos adicionales de tráfico y un riesgo de seguridad innecesario.
Requerimientos para la solución:
1. Uso de VPN para acceso seguro a las credenciales:
Nos gustaría implementar una solución en la que los desarrolladores puedan conectarse a través de una vpn para acceder al clúster de aks y consumir los secretos configurados en el namespace de dev sin necesidad de exponer las credenciales localmente. Estamos evaluando el uso de Azure Virtual Network y VPN Gateway para permitir esta conexión segura.
Además, estamos abiertos a recomendaciones para mejorar la gestión de secretos, como el uso del CSI Secrets Store para montar los secretos directamente desde Azure Key Vault en los contenedores.
2. Conexión interna a Cosmos DB , PostgreSQL y REDIS:
Queremos eliminar la exposición pública de Cosmos DB, PostgreSQL y Azure REDIS Cache, y que los pods dentro del clúster de AKS consuman estos servicios de manera interna a través del Azure Private Link, mejorando así la latencia, seguridad y reduciendo costos de tráfico outbound/inbound.
Esto implicaría configurar el Private Link para ambos servicios y ajustar las políticas de seguridad (NSGs) para que el tráfico fluya únicamente a través de la red interna de Azure.
Qué necesitamos:
1. Asesoría en la implementación de la vpn y acceso seguro a los secretos desde aks.
2. Configuración y ajuste del Private Link para Azure Cosmos DB, Azure PostgreSQL Flexible Server y Azure Redis Cache.
3. Recomendaciones adicionales para optimizar la seguridad y eficiencia en la comunicación entre nuestros servicios internos y externos.
Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Roles needed Developer
Delivery term: October 31, 2024
Skills needed