Define and enforce webhook destination policy for hosted and self-hosted deployments
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 12/100
Línea de trabajo
Start with the connect-time PublicAddressPolicy introduced for source maps in #2625, and the webhook delivery path it would need to cover, including redirect handling. Decide the hosted default and the self-hosted opt-out before writing code, since the issue asks for that decision first. Done means a written policy plus enforcement at connection time and on redirects, tested with local fixtures only.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Webhook delivery currently has no public-address restriction. During review of #2628, Eric called out that user-selected destinations and redirects can reach internal services. #2628 deliberately leaves destination policy unchanged and removes the acceptance test that would have made private, loopback, metadata, and credential URLs a supported contract.
Decide the hosted default and an explicit self-hosted opt-out before implementing restrictions. Evaluate reusing the connect-time PublicAddressPolicy introduced for source maps in #2625, while accounting for webhook redirects, DNS changes, and configured proxies.
Acceptance criteria:
- Define allowed schemes, address ranges, credential-bearing URLs, redirect handling, and the self-hosted configuration contract.
- Enforce the selected policy at connection time and on redirect destinations; URL validation alone must not be treated as protection against DNS changes.
- Cover public destinations, loopback/private/link-local addresses, IPv4/IPv6, DNS changes, redirects, and proxy behavior using controlled local fixtures without contacting real internal or metadata services.
- Define behavior for existing hooks that become disallowed, including actionable sanitized diagnostics and whether they are disabled or rejected without delivery.
- Document compatibility and rollout requirements for hosted and self-hosted installations; preserve legitimate private integrations only under the explicitly chosen configuration.
This is separate from #2628's delivery cleanup and telemetry changes. The remaining destination-policy limitation is not fixed by that PR.
- Lenguaje dominante
- C#
- Estrellas
- 2.5k
- Forks
- 508
- Merge medio
- 2 d 17 h
- PR fusionados (30 d)
- 40
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de exceptionless/Exceptionless
-
bug documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
exceptionless/Exceptionless#2707 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
exceptionless/Exceptionless#2706 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
exceptionless/Exceptionless#2705 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
exceptionless/Exceptionless#2704 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
exceptionless/Exceptionless#2703 ·
Los mantenedores suelen responder en 1 día
Todos los issues de exceptionless/Exceptionless
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
bug elsa 3 prio low
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
elsa-workflows/elsa-core#9154 ·
Los mantenedores suelen responder en 1 día
-
.NET triage
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
microsoft/agent-framework#9918 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
QuantConnect/Lean#10005 ·
Los mantenedores suelen responder en 1 día