Back to skills
SKILL.md
Kong Api Gateway
ASecurityConfiguration de Kong API Gateway — services, routes, plugins, rate limiting, authentification et monitoring. À utiliser quand l'utilisateur configure Kong, gère des APIs avec Kong ou implémente des plugins. Se déclenche aussi avec "Kong", "Kong Gateway", "Kong plugin", "Kong route", "API gateway Kong", "kong.yml", "Kong declarative".
- 4 stars
- 0 votes
- 0 copies
- 4 views
- Added September 12, 2026
Works with
Security analysis
96/100- Uses curl or wget to download content
Pro scans all 2 files and shows the line behind each finding
npx -y skills add aibot88/sec_skill_store --skill kong-api-gateway --agent claude-codeAre you the author of Kong Api Gateway?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/aibot88-kong-api-gateway)---
name: kong-api-gateway
description: Configuration de Kong API Gateway — services, routes, plugins, rate limiting, authentification et monitoring. À utiliser quand l'utilisateur configure Kong, gère des APIs avec Kong ou implémente des plugins. Se déclenche aussi avec "Kong", "Kong Gateway", "Kong plugin", "Kong route", "API gateway Kong", "kong.yml", "Kong declarative".
---
# Kong API Gateway
## Workflow
1. **Définir les services** : backend APIs à exposer.
2. **Configurer les routes** : mapping des chemins/hosts vers les services.
3. **Appliquer les plugins** : sécurité, rate limiting, logging.
4. **Monitorer** : métriques, logs, health checks.
## Configuration déclarative (kong.yml)
```yaml
_format_version: "3.0"
services:
- name: payment-service
url: http://payment-api:8080
connect_timeout: 5000
write_timeout: 60000
read_timeout: 60000
retries: 3
routes:
- name: payment-route
paths:
- /api/payments
methods:
- GET
- POST
- PUT
- DELETE
strip_path: true
plugins:
- name: rate-limiting
config:
minute: 100
policy: redis
redis_host: redis
- name: jwt
config:
claims_to_verify:
- exp
- name: order-service
url: http://order-api:8080
routes:
- name: order-route
paths:
- /api/orders
strip_path: true
plugins:
- name: rate-limiting
config:
minute: 200
- name: cors
config:
origins:
- https://app.company.com
methods:
- GET
- POST
headers:
- Authorization
- Content-Type
max_age: 3600
# Plugins globaux
plugins:
- name: prometheus
config:
per_consumer: true
- name: file-log
config:
path: /var/log/kong/access.log
reopen: true
- name: correlation-id
config:
header_name: X-Request-ID
generator: uuid
```
## Plugins essentiels
| Plugin | Usage | Scope |
|--------|-------|-------|
| **rate-limiting** | Limiter les requêtes | Par route/service/consumer |
| **jwt** / **oauth2** | Authentification | Par route/service |
| **cors** | Cross-Origin requests | Par route/service |
| **prometheus** | Métriques | Global |
| **file-log** / **http-log** | Logging | Global/par route |
| **correlation-id** | Traçabilité | Global |
| **request-transformer** | Modifier les requêtes | Par route |
| **response-transformer** | Modifier les réponses | Par route |
| **ip-restriction** | Whitelist/blacklist IP | Par route/service |
| **acl** | Contrôle d'accès par groupe | Par route |
## Administration
```bash
# Vérifier la configuration
kong config parse kong.yml
# Appliquer la config déclarative
kong config db_import kong.yml
# Admin API
curl http://localhost:8001/services # Lister les services
curl http://localhost:8001/routes # Lister les routes
curl http://localhost:8001/plugins # Lister les plugins
curl http://localhost:8001/status # Santé de Kong
```
## Docker Compose
```yaml
services:
kong:
image: kong:3.6
environment:
KONG_DATABASE: "off"
KONG_DECLARATIVE_CONFIG: /kong/kong.yml
KONG_PROXY_LISTEN: 0.0.0.0:8000
KONG_ADMIN_LISTEN: 0.0.0.0:8001
KONG_LOG_LEVEL: info
ports:
- "8000:8000" # Proxy
- "8001:8001" # Admin API
volumes:
- ./kong.yml:/kong/kong.yml:ro
```
## Règles
- Préférer le mode **declarative** (DB-less) pour les environnements immutables.
- Les plugins de sécurité (rate limiting, auth) doivent être configurés **par route**, pas globalement.
- Toujours activer le plugin **correlation-id** pour la traçabilité distribuée.
- Exposer l'Admin API uniquement sur un réseau interne, jamais publiquement.
Files in this skill
- SKILL.md
- source.json
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.