You push a new service to Cloud Run. The build is clean, the endpoint looks fine, but the second you hand it to production, someone asks the dreaded question: “Who’s checking access?” Secure access is boring until it’s broken. That’s where Cloud Run Envoy enters the room, quietly making sure your workloads can talk safely, repeatably, and under policy.
Cloud Run runs containers managed by Google Cloud, scaling HTTP services with zero infrastructure hassle. Envoy is the lightweight proxy built to route, balance, and enforce identity-aware traffic rules. Together they act like a defense-in-depth handshake: Cloud Run serves code only when Envoy confirms identity, TLS handshakes, and request boundaries.
Integrating Cloud Run with Envoy
Think of Envoy as the intelligent traffic cop sitting in front of your Cloud Run service. It examines JWTs, OIDC tokens, and mTLS certs before requests reach your app. In a typical setup, you deploy Envoy as a sidecar or external gateway that handles identity verification through Google IAM, Okta, or any standards-based provider. The logic stays the same: Cloud Run provides the endpoint, Envoy enforces who can drive through it.
When configured properly, Cloud Run Envoy pairs authentication with routing policies so your developers can push code without touching firewall rules. Identity flows through Envoy once, session data stays consistent, and Cloud Run scales without losing context. That combination removes manual ACL tweaks and the lag between deployment and approval.
Common questions
How do I connect Cloud Run and Envoy securely?
Use Envoy’s filter chain with an external authorization filter pointing to your IAM or OIDC endpoint. Feed Cloud Run’s public URL into Envoy’s cluster definitions, then validate tokens before forwarding traffic. Keep certificates short-lived and rotate them automatically using your CI pipeline.