Contexto
Sigue a #7 (carga de specs desde URL remota, PR sngular#385). Ese primer alcance soporta solo URLs públicas.
Petición
Permitir autenticarse contra registries remotos protegidos (caso típico de Apicurio Registry con seguridad activada), sin poner credenciales en la propia URL. Opciones a soportar:
- Bearer token (
Authorization: Bearer <token>).
- Basic auth (usuario/contraseña).
- Headers arbitrarios (p. ej.
X-Registry-ApiKey).
Propuesta
- Añadir configuración opcional en
specFile (o global del plugin), p. ej. remoteAuth con type (bearer/basic/header), y valores tomados preferiblemente de variables de entorno / propiedades, nunca hardcodeadas en el pom.
- Enviar las cabeceras en
PathUtil.openUrlStream (o una variante que reciba headers) usando URLConnection.setRequestProperty.
- Documentar el uso con Apicurio protegido.
Seguridad
- No registrar/loguear tokens.
- Recomendar env vars / secrets del CI para las credenciales.
- Mantener la validación TLS por defecto (no añadir "trust-all").
Estado actual (ya cubierto por sngular#385)
- Timeouts de conexión/lectura acotados.
- Esquemas restringidos a http/https/file.
- Validación TLS por defecto del JVM (self-signed → añadir al truststore).
Contexto
Sigue a #7 (carga de specs desde URL remota, PR sngular#385). Ese primer alcance soporta solo URLs públicas.
Petición
Permitir autenticarse contra registries remotos protegidos (caso típico de Apicurio Registry con seguridad activada), sin poner credenciales en la propia URL. Opciones a soportar:
Authorization: Bearer <token>).X-Registry-ApiKey).Propuesta
specFile(o global del plugin), p. ej.remoteAuthcontype(bearer/basic/header), y valores tomados preferiblemente de variables de entorno / propiedades, nunca hardcodeadas en el pom.PathUtil.openUrlStream(o una variante que reciba headers) usandoURLConnection.setRequestProperty.Seguridad
Estado actual (ya cubierto por sngular#385)