envoyproxy / envoyproxy/gateway

External Auth across multiple clusters / centralized auth service support

Open
#8,737 2 comments 0 reactions 0 assignees View on GitHub
stale triage
Dominant language
Go
Stars
3k
Forks
864
Avg merge
1d 22h
Merged PRs (30d)
148

Description

*Description*:
Hi,

I'm trying to implement OAuth2/OIDC authentication across multiple Kubernetes clusters using Envoy Gateway, and I'm running into limitations with both available approaches.

Method 1: External Auth (HTTPExtAuthService)

The issue is that backendRefs requires a Kubernetes Service, which effectively forces the external auth service to run inside the same cluster (or be exposed via a Service abstraction).

This prevents me from using a centralized authentication service shared across multiple clusters, which was possible with other solutions like ingress-nginx (using external URLs).

Questions:

Is there any recommended way to reference an external (non-cluster) auth service in Envoy Gateway?
Are there plans to support direct URL-based backends or a more flexible backend type for ExtAuth?

Method 2: Native OIDC support

The built-in OIDC support works well, but it requires configuring a separate client/application per cluster in the Identity Provider.

In a multi-cluster environment, this becomes operationally difficult to maintain.

Questions:

Is there a recommended pattern for reusing the same OIDC client across multiple Envoy Gateway instances?

Ideally, I would like to:

Keep authentication centralized
Avoid deploying oauth2-proxy in every cluster
Avoid creating multiple OIDC clients in the IdP

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.