Files
gis/configs/.env.example
Bakhtiyar Issakhmetov 5b44cbda2f fix(security): close High/Critical findings from the Stage 8 scan
- Bump github.com/rabbitmq/amqp091-go 1.12.0 -> 1.13.0 (3 Critical, 7 High,
  reachable via rabbitmq.Connect) and golang.org/x/{text,net,crypto},
  klauspost/compress; toolchain go1.26.8, builder image pinned to
  golang:1.26.8-alpine3.24.
- Build Content-Disposition per RFC 6266/8187 (ASCII fallback +
  filename*=UTF-8''), stripping CR/LF, quotes and backslashes (CWE-113).
- Cap request bodies with MaxBytesReader (HTTP_MAX_UPLOAD_BYTES, default
  2 GiB); multipart uploads over the limit return 413 (CWE-400).
- /readyz reports "unavailable" instead of raw backend errors (CWE-209).
- Drop deprecated middleware.RealIP; add X-Content-Type-Options: nosniff.
- docker-compose credentials come from ${VAR:-default}.
- Check the RegisterValidation error; annotate verified gosec false
  positives with #nosec and a reason.

Re-scan: govulncheck 0 reachable, trivy fs/image 0 High/Critical,
gosec High 0. go test -race passes against PostGIS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 21:44:10 +05:00

38 lines
1.1 KiB
Plaintext

# Copy to .env at the repo root and adjust as needed: cp configs/.env.example .env
# HTTP server
PORT=8080
# Upper bound for any request body, uploads included (bytes; default 2 GiB).
# Larger requests are rejected with 413. 0 disables the cap.
HTTP_MAX_UPLOAD_BYTES=2147483648
# Postgres
DB_URL=postgres://gis:gis@127.0.0.1:5432/gis?sslmode=disable
# Schema that migrations operate on (used by `gis migrate fresh`).
DB_SCHEMA=public
# goose CLI (the `gis migrate` subcommand uses DB_URL directly; these are for the
# standalone goose CLI only)
GOOSE_DRIVER=postgres
GOOSE_DBSTRING=postgres://gis:gis@127.0.0.1:5432/gis?sslmode=disable
GOOSE_MIGRATION_DIR=migrations
# S3 / MinIO
S3_ENDPOINT=127.0.0.1:9000
S3_ACCESS_KEY=minioadmin
S3_SECRET_KEY=minioadmin
S3_BUCKET=geofiles
S3_USE_SSL=false
# RabbitMQ
RABBITMQ_URL=amqp://guest:guest@127.0.0.1:5672/
RABBITMQ_EXCHANGE=gis.events
RABBITMQ_QUEUE=gis.events.example
# Host port mapping for the postgres container (docker-compose)
DB_PORT=5432
# Landscape Program parallelism (bounds worker peak memory)
LP_MAX_WORKERS=8
LP_MAX_NODES=2