security: public Deploy härten (Reverse-Proxy, GoTrue-Rate-Limit, RLS-Revoke)
Für die öffentlich erreichbare Instanz (dev.openbureau.ch): 1. Reverse-Proxy nur /auth/* durchreichen — /rest, /storage, /realtime raus. PostgREST /rest/v1/ gab die komplette DB-Schema-Beschreibung (OpenAPI) preis; der Browser nutzt Supabase nur fürs Login, Daten laufen über /api/*. (Caddy-Block in create-openbureau-lxc.sh + proxmox/README.md angepasst.) 2. GoTrue GOTRUE_RATE_LIMIT_TOKEN_REFRESH=100 — bremst Brute-Force aufs /token, das public direkt gegen GoTrue läuft (nicht übers Node-Rate-Limit). 3. db/schema.sql: revoke all from anon/authenticated auf posts/comments/forums/ threads; grants nur noch service_role. RLS bleibt so auch bei künftigen Policies dicht (Defense-in-Depth statt "RLS ohne Policy"). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -192,8 +192,11 @@ cat <<EOF
|
||||
|
||||
Öffentlich: https://${SITE_DOMAIN} (sobald der Reverse-Proxy auf ${IPADDR:-<ip>} zeigt)
|
||||
Caddy-Block: ${SITE_DOMAIN} {
|
||||
@sb path /auth/* /rest/* /storage/* /realtime/*
|
||||
reverse_proxy @sb ${IPADDR:-<ip>}:8000
|
||||
# Nur /auth/* muss public ans Gateway (Browser-Login). Daten
|
||||
# laufen über /api/* (Node spricht kong intern an). /rest, /storage,
|
||||
# /realtime NICHT exponieren — unnötige Angriffsfläche.
|
||||
@auth path /auth/*
|
||||
reverse_proxy @auth ${IPADDR:-<ip>}:8000
|
||||
reverse_proxy ${IPADDR:-<ip>}:8080
|
||||
}
|
||||
EOF
|
||||
|
||||
Reference in New Issue
Block a user