cmmc-platform/kong/kong.template.yml

78 lines
1.7 KiB
YAML

_format_version: "3.0"
_transform: true
services:
- name: fastapi-svc
host: fastapi
port: 8000
protocol: http
routes:
- name: api-root
paths: ["/api/"]
strip_path: true
methods: ["GET", "POST", "PUT", "PATCH", "DELETE"]
plugins:
- name: request-transformer
config:
add:
headers:
- "X-Forwarded-User: $http_x_auth_request_user"
- "X-Forwarded-Email: $http_x_auth_request_email"
remove:
headers:
- "Authorization"
- name: debug-api
url: http://fastapi:8000
# - name: openid
# config:
# issuer: "${KEYCLOAK_URL}/realms/${KEYCLOAK_REALM}"
# client_id: "${KEYCLOAK_CLIENT_ID}"
# client_secret: "${KEYCLOAK_CLIENT_SECRET}"
# redirect_uri: "https://api.kellsupport.com/api/"
# scopes: ["openid", "profile", "email"]
# bearer_only: false
# response_type: "code"
# session_secret: "${OIDC_SESSION_SECRET}"
# ssl_verify: false
# timeout: 10000
- name: cors
config:
origins: ["*"]
methods: ["GET", "POST", "PUT", "PATCH", "DELETE"]
headers: ["Accept", "Content-Type", "Authorization"]
credentials: true
max_age: 3600
- name: api-debug-auth
paths: ["/api/debug-auth"]
strip_path: true
methods: ["GET"]
- name: gateway-health
paths: ["/gateway-health"]
strip_path: true
methods: ["GET"]
- name: healthz
paths: ["/healthz"]
strip_path: true
methods: ["GET"]
- name: debug-auth
paths: ["/api/debug-auth"]
strip_path: true
service: ["debug-api"]
plugins:
- name: rate-limiting
config:
second: 25
policy: local