Ever kicked off a CircleCI job that needs to reach a locked-down internal service? You know the dance. Bastion host, VPN, static IP allowlists, or some ad-hoc tunnel running on your laptop. It feels fragile because it is. CircleCI TCP Proxies exist to fix that without leaving backdoors open.
CircleCI’s TCP Proxy feature lets your jobs connect securely to private resources during builds. Think databases behind corporate firewalls or services only reachable inside a VPC. Instead of juggling jump boxes, you route traffic through a managed proxy that enforces authentication and short-lived access. The pipeline stays cloud-native while your data stays inside.
Conceptually it works like this: CircleCI provisions an ephemeral proxy endpoint, authenticates your job’s identity, and tunnels the TCP connection to a target inside your network. The proxy lives only for the job’s duration. It dies quietly with the container, which means attackers have no leftovers to exploit.
When paired with identity providers like Okta or AWS IAM and integrated through OIDC tokens, these proxies turn into fine-grained gates. Each job can prove who it is and what it’s allowed to reach, without anyone sharing database passwords in plain text. The connection behaves like a VPN designed for automation, not humans.
If you have multi-environment builds that span staging, QA, and production, using CircleCI TCP Proxies keeps policy consistent. You can enforce least privilege across all stages. Permissions travel with the pipeline, not with whoever happens to trigger it. That shrinks your audit surface and simplifies SOC 2 reviews.
Use short token lifetimes. Rotate access at the network boundary, not inside jobs. Avoid environment variables for credentials tied to network reachability. If something breaks, start by verifying your network’s CIDR ranges and OIDC claim mappings before touching your build configs.