OIDC Nginx
1 jour - Août 2025 Genavir, Brest

OIDC Auth Nginx est un microservice d'authentification et de contrôle d'accès qui agit comme une API Gateway devant vos applications, sécurisant à la fois services HTTP et WebSocket.
Concept
Une passerelle Nginx configurée pour déléguer l'authentification à un fournisseur OIDC externe, avec des règles d'accès fines basées sur les claims JWT.
Architecture
Mécanisme auth_request
Nginx délègue la validation à un backend OIDC :
location /api/ {
auth_request /sso/check;
auth_request_set $auth_claims $upstream_http_x_auth_claims;
proxy_pass http://backend;
}
Backend OIDC
- Gestion du flux Authorization Code avec PKCE
- Validation des tokens JWT
- Extraction et vérification des claims
- Refresh automatique des tokens
Fonctionnalités
Authentification
- Redirection automatique vers le fournisseur OIDC
- Support du deep linking post-authentification
- Gestion transparente des sessions
Autorisation Dynamique
Règles d'accès basées sur les claims JWT :
set $auth_params "role=admin,service=api";
Conditions supportées :
- Rôles : vérification des rôles utilisateur
- Groupes : appartenance à des groupes
- Scopes : permissions OAuth
- Custom claims : n'importe quel claim JWT
Support Multi-Protocoles
- HTTP/HTTPS : APIs REST classiques
- WebSocket : applications temps réel
- Configuration flexible par location
Sécurité
Flux OIDC Sécurisé
- Authorization Code avec PKCE
- Validation cryptographique des tokens
- Protection contre les attaques CSRF
Injection de Claims
proxy_set_header X-User-Email $auth_email;
proxy_set_header X-User-Roles $auth_roles;
Infrastructure
Stateless et Scalable
- Aucun état serveur
- Scalabilité horizontale
- Haute performance grâce à Nginx
Configuration Prête à l'Emploi
Fichiers de configuration fournis :
server {
listen 443 ssl;
server_name api.example.com;
include /etc/nginx/oidc-auth.conf;
location /api/ {
set $auth_params "service=api";
auth_request /sso/check;
proxy_pass http://backend;
}
}
Cas d'Usage
- Sécuriser des APIs legacy
- Ajouter l'authentification à des microservices
- Protéger des applications WebSocket
- Centraliser l'authentification
Installation Rapide
git clone https://github.com/WalidDevIO/nginx-oidc
cd nginx-oidc
docker-compose up
Démonstration d'Expertise
- Architecture reverse proxy avancée
- Intégration de protocoles d'authentification
- Sécurité au niveau réseau
- Configuration Nginx complexe