Přeskočit na obsah
_CORE
Know-How

CORS konfigurace — Cross-Origin Resource Sharing

7 min čtení
SecurityCORSAPIWeb

CORS říká prohlížeči, zda JavaScript na jedné doméně smí komunikovat s API na jiné doméně. Špatná konfigurace = nefunkční frontend nebo bezpečnostní díra.

CORS headers

Access-Control-Allow-Origin: https://app.example.com Access-Control-Allow-Methods: GET, POST, PUT, DELETE Access-Control-Allow-Headers: Content-Type, Authorization Access-Control-Allow-Credentials: true

Konfigurace — Express.js

const cors = require('cors'); const allowed = ['https://app.example.com', 'https://admin.example.com']; app.use(cors({ origin: (origin, cb) => { if (!origin || allowed.includes(origin)) cb(null, true); else cb(new Error('Not allowed')); }, credentials: true, })); // ❌ NIKDY: cors({ origin: '*', credentials: true })

Typické chyby

  • Wildcard s credentials — nefunguje
  • Reflection origin bez validace
  • Null origin povolený

Klíčový takeaway

Whitelistujte konkrétní origins, nikdy wildcard s credentials.

CORE SYSTEMS tým

Praktické know-how z reálných projektů. Bez buzzwordů, s kódem.