EMPRESA_JOSESAID · gateway-ms

Uso de IA · Gateway

Entrada única a la plataforma en el puerto 8080. No tiene herramientas propias.

Cómo se usa la IA aquí. Los fragmentos son código real del repositorio.

Usuario a ser usado: admin@empresa.mx (contraseña Demo2026!)

No expone herramientas propias a la IA.

01 Rutas del gateway

Rutas del gateway. Nexus entra por /nexus/** y el resto por el nombre de cada servicio.

application.yml
          routes:
            # Nexus expone /nexus/** directamente, sin el prefijo del servicio
            - id: nexus
              uri: lb://nexus-ms
              predicates:
                - Path=/nexus/**
            # Endpoint MCP de Nexus. El JWT se valida en el gateway y nexus-ms vuelve a validarlo.
            - id: nexus-mcp
              uri: lb://nexus-ms
              predicates:
                - Path=/mcp,/mcp/**
          discovery:
            locator:
              # Cada servicio registrado queda en /{nombre-del-servicio}/** sin configurar rutas
Qué hace: Cada ruta reenvía a un servicio registrado en Eureka (lb://).

02 El cliente RestClient de Nexus apunta al gateway y reenvía el token del usuario

El cliente RestClient de Nexus apunta al gateway y reenvía el token del usuario.

PropagacionTokenConfig.java
        RestClient.Builder builder = RestClient.builder();
        if (!bundle.isBlank()) {
            SslBundle ssl = bundles.getObject().getBundle(bundle);
            builder.requestFactory(ClientHttpRequestFactoryBuilder.detect()
                    .build(HttpClientSettings.ofSslBundle(ssl)));
        }
        return builder
                .baseUrl(url)
                .requestInterceptor((request, body, ejecucion) -> {
                    var autenticacion = SecurityContextHolder.getContext().getAuthentication();
                    if (autenticacion instanceof JwtAuthenticationToken jwt) {
                        request.getHeaders().setBearerAuth(jwt.getToken().getTokenValue());
                    }
                    return ejecucion.execute(request, body);
                })
                .build();
Qué hace: Nexus nunca llama directamente a otro microservicio: siempre pasa por el gateway.
Regla del proyecto: la IA propone o prepara; la persona confirma con el código de 8 dígitos. Ninguna herramienta de escritura cambia datos por sí sola.