Motivation
Today, securing Azure Functions with Microsoft Entra ID typically requires one of two approaches:
EasyAuth (App Service Authentication)
Simple to enable, but:
- Limited per‑function control
- Harder to test locally
- Awkward for advanced scenarios (multi‑tenant, custom claims, mixed auth)
Custom JWT validation in code
Flexible, but:
- Boilerplate repeated across functions and repos
- Inconsistent patterns between languages
- Easy to misconfigure (issuer, audience, JWKS, clock skew, etc.)