惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
量子位
人人都是产品经理
人人都是产品经理
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Recent Announcements
Recent Announcements
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
N
Netflix TechBlog - Medium
H
Help Net Security
博客园 - 三生石上(FineUI控件)
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
The Cloudflare Blog
S
SegmentFault 最新的问题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
P
Proofpoint News Feed
宝玉的分享
宝玉的分享
Vercel News
Vercel News

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Introducing EAP: The Production-Ready Zero-Config Auth Pr...
Prasoon Sharma · 2026-06-20 · via DEV Community

Prasoon Sharma

Securing web endpoints and service-to-service communication is notoriously complex. You often find yourself wrapping services with complex setups like oauth2-proxy, writing custom token exchangers, or writing redundant authentication logic across different service repositories.

To solve this, I built EAP—a lightweight, zero-config authentication proxy designed to handle modern, multi-cloud enterprise authentication out of the box.

With EAP, you can secure any backend service without writing a single line of auth code. Just run the Docker container, specify your environment variables, and get robust Google OAuth (U2S), JWT verification (S2S), Cloud Identity integration, and built-in rate limiting immediately.


💡 Key Features of EAP

  • 🔒 Double Authentication Modes:
    • User-to-Server (U2S): Secure browser access using Google OAuth.
    • Server-to-Server (S2S): Validate server calls via JWT with custom key signature support (RSA).
  • 👥 Domain & Email Whitelisting: Restrict user login access to specific domains or specific emails via ALLOWED_EMAILS.
  • ☁️ Native Cloud Provider Integrations: Built-in hooks for cloud-specific authentication patterns:
    • GCP (GCP_ONLY)
    • AWS Cognito (AWS_ONLY, token exchange configs)
    • Azure AD (AZURE_ONLY, target resource mapping)
    • Kubernetes (KUBERNETES_ONLY)
  • ⚡ Built-in Rate Limiting: Prevent DDoS attacks and abuse with fine-grained rate limiting for both standard users and server-to-server connections.

🚀 Quick Start (Get running in 1 minute)

Deploying EAP is as simple as running a single command.

Here is the complete configuration to launch EAP in front of your upstream backend:

docker run -d \
  -p 8080:8080 \
  -e PORT=8080 \
  -e TARGET_URL="https://your-backend-service.com" \
  -e JWT_SECRET="your-jwt-signing-secret-key" \
  -e GOOGLE_CLIENT_ID="your-google-client-id" \
  -e GOOGLE_CLIENT_SECRET="your-google-client-secret" \
  -e GOOGLE_REDIRECT_URL="https://your-domain.com/auth/callback" \
  -e ALLOWED_EMAILS="user@gmail.com,@yourcompany.com" \
  -e RSA_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----" \
  -e GCP_ONLY=false \
  -e AWS_ONLY=false \
  -e AWS_COGNITO_TOKEN_URL="https://your-cognito-domain.auth.us-east-1.amazoncognito.com/oauth2/token" \
  -e AWS_CLIENT_ID="your-cognito-client-id" \
  -e AWS_CLIENT_SECRET="your-cognito-client-secret" \
  -e AZURE_ONLY=false \
  -e AZURE_TARGET_RESOURCE="https://database.windows.net/" \
  -e KUBERNETES_ONLY=false \
  -e RATE_LIMIT_PER_SEC=3.0 \
  -e RATE_BURST=5.0 \
  -e S2S_RATE_LIMIT_PER_SEC=30.0 \
  -e S2S_RATE_BURST=100.0 \
  parth14854tiwari/eap:latest


🔍 How it Works Under the Hood

EAP acts as a reverse proxy sitting directly in front of your target API (TARGET_URL).

  1. User Visits Service: If a user visits the URL via a browser, EAP checks for authentication. If unauthenticated, it initiates a Google OAuth flow. Upon successful authentication, it verifies their email against ALLOWED_EMAILS.
  2. Service-to-Service Requests: When another backend calls your API, EAP intercepts the call, validates the JWT Bearer token using the JWT_SECRET (or RSA_PRIVATE_KEY if configured), and enforces rate-limiting boundaries.
  3. Upstream Forwarding: Validated requests are passed through cleanly to TARGET_URL.

🤝 Open Source & Contributing

EAP is open-source and ready for production testing. We would love to hear your feedback, issues, and feature requests.

If you find EAP useful, please:

  • Star the repository 🌟 on GitHub.
  • Open issues for bugs, features, or ideas.
  • Submit PRs to help us add support for additional OAuth providers (like GitHub or GitLab)!