CORS on tapa, jolla palvelin ilmoittaa selaimelle, että se saa ohittaa normaalin nk. same-origin -rajoituksen ja kutsua toisessa domainissa sijaitsevaa APIa. Selaimet tekevät CORS-tarkistusta varten erillisen nk. preflight-kutsun, jonka perusteella saadaan tieto CORS-otsakkeista. On tärkeää huomata, että hyökkääjä voi tietenkin aina kutsua rajapintaa ilman selainta riippumatta CORSista. Palvelinpään pääsynhallinta tulee aina toteuttaa käyttäen oikeita pääsynhallintamekanismeja.

Kohdepalvelin ilmoittaa CORS-politiikkansa käyttäen Access-Control-Allow-Origin -otsaketta. Access-Control-Allow-Origin määrittelee ne JavaScript-koodin lähteet, jotka saavat kyseistä rajapintaa kutsua.

Jos esimerkiksi organisaatiolla on web-sovellus osoitteessa app.company.com ja API osoitteessa api.cloud.example, ja he haluavat app.company.comilta toimitetun JavaScriptin pystyä kutsumaan api.cloud.examplea, api.cloud.examplen rajapinnan on palautettava jotakin tämänkaltaista HTTP-otsakkeissaan:


Access-Control-Allow-Origin: app.company.com
Access-Control-Allow-Methods: GET POST PUT DELETE


Mikäli rajapinta tarvitsee valtuutuksen (esimerkiksi evästeissä), sen tulee myös antaa selaimelle erityislupa näiden toimitukseen:


Access-Control-Allow-Credentials: true


Jos APIa pitää pystyä kutsumaan mistä tahansa JavaScript-koodista riippumatta sen alkuperästä, otsakkeen tulee olla


Access-Control-Allow-Origin: *


Mikäli tämä otsake on näkyvissä rajapinnan otsakkeissa, mutta rajapinta ei ole tarkoitettu yleisesti kutsuttavaksi, CORS-politiikka on todennäköisesti liian lepsu.