knative / knative/eventing

block the use of external URLs from eventing Destinations

Open
#2,721 21 comments 0 reactions 0 assignees View on GitHub
area/eventing kind/feature-request priority/important-soon triage/accepted
Dominant language
Go
Stars
1.6k
Forks
631
Avg merge
2d 1h
Merged PRs (30d)
6

Description

**Problem**

We're running Knative in a managed environment where the eventing infrastructure is something that will be hidden from the user and is really there to drive traffic to the hosted KnServices. In this environment, if we allow the user to specify external URLs for the destinations of the Eventing components (e.g. Sink in an adapter) then we'd get into a situation where people can setup the KnEventing infrastructure to route traffic to something outside of the cluster. So, if the infrastructure is meant to be cost free the user would then have a loop-hole to free cloud eventing infrastructure.

We'd like an operator option to generate an error if any Destination resulted in a URI that is not local to the cluster. Default would be to not enforce such restrictions.

**[Persona:](https://github.com/knative/eventing/blob/master/docs/personas.md)**
Operators

**Exit Criteria**
Enable the flag and specify some internet facing URI as a Destination - should result in an error while trying to create the eventing resource with that Destination.

Contributor guide

Open the contributing guide

Research direction

The issue names no files or tests. Start by locating where Eventing Destination URIs are validated and where operator options are defined; then add coverage for rejecting an external URI when enforcement is enabled while preserving the default behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
backend, security
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.