Artikel blog iki ngetokake luwih saka Cross-Origin Resource Sharing (CORS), sing dadi bagéan penting saka keamanan web. Kita bakal njlentrehake apa iku CORS lan sepira penting kanggo aplikasi web, sambil menehi informasi babagan sajarah lan pangembangane. Artikel iki uga negesake keuntungan dhasar saka nggunakake CORS, uga langkah-langkah konfigurasi sing gampang diikuti. Ana rincian teknis, kesalahan sing asring kedadeyan babagan CORS lan solusi-solusine. Kita bakal nyedhiyakake strategi kanggo nambah keamanan CORS lan conto penerapan policy. Akhirnya, kita bakal nyedhiyakake ringkesan babagan kesalahpahaman umum sing ana ing CORS, menyang informasi paling penting sing kudu dingerteni. Artikel iki minangka pandhuan komprehensif kanggo para pengembang web babagan CORS.
Apa Iku CORS lan Sepira Penting kanggo Aplikasi Web
Cross-Origin Resource Sharing (CORS) minangka mekanisme keamanan sing ngidini utawa nyegah browser web kanggo ngakses sumber daya saka domain sing beda. Sederhanane, iki ngontrol akses aplikasi web menyang sumber daya ing njaba domain dhewe (contone, API, font, gambar). CORS minangka salah sawijining fondasi keamanan web modern lan nduweni peran kritis kanggo njamin keamanan aplikasi web.
CORS, kanthi pengaruh khusus ing pendekatan pangembangan web modern kayata aplikasi siji kaca (SPA) lan arsitektur layanan mikro, nduweni pentinge. Aplikasi-aplikasi kasebut biasane gumantung marang API lan sumber daya liyane ing domain sing beda. CORS njamin pertukaran sumber daya iki kanthi aman, saengga bisa nyegah situs sing ala nyekel data sensitif. Tanpa mekanisme CORS, sembarang situs web bisa nggunakake JavaScript kanggo nyolong utawa ngobah data pangguna saka situs liyane.
- Manfaat CORS
- Njaga aplikasi web supaya bisa tukar informasi kanthi aman antar domain.
- Nyegah situs web sing ala supaya ora bisa ngakses data pangguna.
- Nambah keamanan API lan layanan web liyane.
- Ndukung penerapan pendekatan pangembangan web modern (SPA, layanan mikro) kanthi aman.
- Minimisasi masalah kompatibilitas antar browser.
- Marang pangembang supaya bisa ngontrol kanthi rinci, sumber daya sing bisa diakses saka domain ngendi wae.
CORS nduweni pentinge sing vital saka perspektif keamanan web amarga nyawiji karo kebijakan sumber sing padha (Same-Origin Policy - SOP) kanggo nglindhungi data aplikasi web lan pangguna. SOP ngidini siji kaca web mung ngakses sumber daya ing domain sing padha, protokol, lan port. CORS, ing sisih liya, ngidini akses menyang sumber daya saka domain sing beda-beda ing kondisi tartamtu, saengga nggawe aplikasi web luwih fleksibel lan fungsional, nalika isih njaga keamanan.
Konfigurasi CORS sing bener duweni pentinge kritis kanggo keamanan aplikasi web. Kebijakan CORS sing diatur kanthi salah bisa nggawe aplikasi web rentan marang sawetara celah keamanan. Mula, penting kanggo ngerti cara kerja CORS lan cara ngatur dheweke kanthi bener, minangka kabutuhan saka saben pangembang web.
Sajarah lan Pangembangan CORS
Cross-Origin Resource Sharing (CORS) minangka bagian sing ora bisa dipisahake saka aplikasi web modern, nanging akar teknologi iki lan evolusi sing wis dilakoni, penting kanggo ngerteni nilaine ing jaman saiki. Ing wiwitan, browser web diwatesi dening kebijakan sumber sing padha (Same-Origin Policy), sing ngidini akses mung saka sumber sing asal dhéwé. Kahanan iki banget mbatesi pangembangan aplikasi web modern sing kudu narik data saka domain sing beda. CORS dikembangake kanggo ngatasi pembatasan iki lan ngidini panjalukan cross-origin sing aman.
Pangembangan CORS diwiwiti minangka jawaban kanggo tantangan praktis sing diadhepi para pangembang web. Utamane, kebutuhan kanggo ngumpulake data saka sumber sing beda lan ngakses API mbutuhake solusi supaya aplikasi web bisa luwih dinamis lan duweni fitur sing luwih sugih. Amarga kebutuhan iki, World Wide Web Consortium (W3C) nemtokake standar kanggo njelasake cara browser lan server kudu berinteraksi. Standar iki menehi fleksibilitas luwih kanggo pangembang lan uga njaga celah keamanan paling cilik.
| Tahun | Pangembangan | Deskripsi |
|---|---|---|
| Awal 2000-an | Kebutuhan Pertama | Pangembang web miwiti nyadari kebutuhan narik data saka domain sing beda. |
| 2004 | Solusi Pertama | Solusi sementara kaya JSONP muncul, nanging nduweni celah keamanan. |
| 2009 | Pangginaan W3C | W3C mulai ngembangake standar kanggo CORS. |
| 2010+ | Penggunaan Umum | CORS mulai didhukung dening browser modern lan digunakake sacara umum. |
Evolusi CORS wis terjaga kanthi setia antarane keamanan web lan fungsionalitas. Aplikasi awal cukup kanggo njawab panjalukan sing simpel, nanging sairing wektu, iki diluaskan kanggo ndhukung skenario sing luwih rumit. Contone, mekanisme preflight request, menehi lapisan keamanan tambahan kanggo mriksa manawa server ngidini panjalukan cross-origin tartamtu utawa ora. Pembaruan iki lan sing sejenisé, nggawe CORS dadi teknologi dhasar sing njamin keamanan lan efisiensi aplikasi web modern.
Tahapan Pangembangan CORS
- Batesan Kebijakan Sumber Sing Padha (Same-Origin Policy)
- Munculé Solusi Awal Kaya JSONP (Kanthi Celah Keamanan)
- Pangembangan Standar dening W3C
- Pangintroduksian Mekanisme Preflight Request
- Diadopsi Luwih Umum dening Browser Modern
Saiki, CORS dadi mekanisme kritis kanggo aplikasi web supaya bisa tukar informasi kanthi aman antarane sumber dayane. Nanging, CORS iku kudu dikonfigurasi kanthi bener kanggo nyegah celah keamanan. Kebijakan CORS sing diatur kanthi salah bisa menehi kesempatan kanggo pihak sing ala kanggo ngakses data sensitif. Mulane, pangembang web kudu ngerti prinsip dhasar CORS lan cara ngatur sing bener.
Kenapa Sampeyan Kudu Gunakake CORS? Keuntungan Utama
Cross-Origin Resource Sharing (CORS) iku mekanisme yang tak terpisakan kanggo nambah keamanan lan fungsionalitas aplikasi web modern. Kanthi ngidini pertukaran data secara aman antara sumber sing ora duwe asal sing padha, CORS menehi fleksibilitas gedhe kanggo para pangembang. Fleksibilitas iki kasedhiya kanggo nambah integrasi layanan saka domain yang berbeda lan nggawe pengalaman pangguna luwih kaya.
Salah siji keuntungan utama CORS yaiku bisa ngatasi batasan sing disebabake dening kebijakan asal sing padha (Same-Origin Policy) sing ditrapake dening browser web. Kebijakan iki ngijini kaca web mung ngakses sumber daya sing nduweni protokol, port (yen ana), lan hostname sing padha. CORS menehi server kemampuan kanggo netepake saka domain endi panjalukan bisa dilayani kanthi aman, saengga bisa ngleksanani pangawalan iki.
Keuntungan CORS
- Nduweni akses aman menyang API ing domain sing beda.
- Ndukung aplikasi web supaya luwih modular lan scalable.
- Menehi pangembang luwih akeh fleksibilitas lan kontrol.
- Ngidini integrasi sing nambah pengalaman pangguna.
- Ngurangi celah keamanan kanthi menehi tingkat keamanan sing luwih dhuwur ing aplikasi web.
Ing tabel ing ngisor iki, sampeyan bisa ngerteni fitur dhasar CORS lan keuntungan sing disedhiyakake kanthi luwih rinci:
| Fitur | Deskripsi | Keuntungan |
|---|---|---|
| Panjalanan Antar-Domain | Panjalanan HTTP sing digawe saka domain sing beda. | Ngidini berbagi data lan integrasi layanan. |
| Preflight Requests | Request sing nggunakake metode OPTIONS kanggo mriksa kebijakan CORS ing server. |
Nyedhiyakake transfer data sing aman kanthi nyegah potensi celah. |
| Sumber Sing Diidini (Allowed Origins) | Dhaptar domain sing diidini kanggo akses. | Ngidini akses sing terkontrol dan aman. |
| Dukungan Kredensial (Credential Support) | Ngidini transfer data kayata cookies lan header otentikasi. | Ndukung sesi pangguna lan pengalaman personalisasi. |
Konfigurasi CORS sing bener duweni pentinge kritis kanggo keamanan aplikasi web. Kebijakan CORS sing diatur kanthi salah bisa menehi akses marang penyerang kanggo ngakses data sensitif utawa nglakokake kode jahat. Mulane, ngatur CORS kanthi teliti dadi penting kanggo njamin keamanan web.
Langkah-Langkah Konfigurasi CORS? Pandhuan Sing Sederhana
Cross-Origin Resource Sharing (CORS) iku penting banget kanggo njaga keamanan aplikasi web sampeyan lan ngatur pertukaran data antar sumber. Konfigurasi iki ngontrol akses pangguna web menyang sumber daya liwat domain sing beda. Kebijakan CORS sing diatur kanthi salah bisa nyebabake celah keamanan, nanging sing teratur bisa nambah keamanan aplikasi lan njamin kinerjane yang lancar.
Sadurunge miwiti konfigurasi CORS, penting kanggo ngakoni kabutuhan aplikasi sampeyan lan sumber daya endi sing kudu diakses. Iki mbantu sampeyan ngerti domain sing bisa dipercaya lan metode HTTP (GET, POST, PUT, DELETE dll.) sing kudu diijini. Pendekatan iki nggawe langkah-langkah konfigurasi sabanjuré dadi luwih rumit.
- Langkah-Langkah Konfigurasi CORS
- Analisis Kebutuhan: Identifikasi sumber daya sing kudu diakses.
- Konfigurasi Server: Atur Header HTTP sing cocok ing server.
- Tetepake Header Origin Mung: Sepele dhasar domain sing diidini.
- Ngatur Metode HTTP: Definisikan metode sing diijini (GET, POST dll.).
- Ngatur Setelan Kredensial: Ijinkan pangiriman cookies lan informasi otentikasi.
- Manajemen Kesalahan: Ngatasi kesalahan CORS kanthi tepat.
Konfigurasi CORS, ngenali headers HTTP sing pas paling penting. Header `Access-Control-Allow-Origin` netepake domain endi sing bisa ngakses. Header `Access-Control-Allow-Methods` nemtokake metode HTTP endi sing bisa digunakake. Header `Access-Control-Allow-Headers` nemtokake header khusus endi sing bisa disertakan ing panjalukan. Konfigurasi headers iki kanthi bener ngidini aplikasi sampeyan mlaku kanthi aman lan kompatibel.
| Header HTTP | Deskripsi | Nilai Conto |
|---|---|---|
| Access-Control-Allow-Origin | Domain sumber sing diijini | https://example.com |
| Access-Control-Allow-Methods | Metode HTTP sing diijini | GET, POST, PUT |
| Access-Control-Allow-Headers | Header khusus sing diijini | Content-Type, Authorization |
| Access-Control-Allow-Credentials | Mengijinkan pengiriman cookies | true |
Penting kanggo ngatasi kesalahan CORS kanthi tepat lan menehi tanggapan sing berarti kanggo para pangguna. Kesalahan CORS sing katon ing konsol browser asring nuduhake masalah konfigurasi. Kanggo nyukupi kesalahan iki, delengen konfigurasi ing server lan gawe perbaikan sing dibutuhake. Kajaba iku bisa uga apik kanggo njaga kebijakan CORS sampeyan kanthi rutin lan tetap up-to-date.
Perincian Teknik Cross-Origin Resource Sharing
Cross-Origin Resource Sharing (CORS) iku mekanisme sing ngidini kaca web sing diluncurake saka siji sumber (origin) kanggo ngakses sumber daya ing sumber liya. Dhasar, iki ngidini kaca web kanggo njaluk sumber daya liwat domain, protokol utawa port sing beda. Mekanisme iki dadi penting kanggo nemokake kebutuhan modern ing aplikasi web. Nanging, yen ora dikonfigurasi kanthi bener, bisa dadi risiko keamanan sing serius.
Penting kanggo ngerti konsep asal (origin) sadurunge madahi rincian teknis CORS. Asal minangka kombinasi saka protokol (http/https), domain (example.com), lan port (80/443). Yen salah siji saka telu iki beda, rong sumber kasebut dianggep beda. CORS dibangun minangka langkah keamanan sing ditrapake dening kebijakan sumber sing padha (Same-Origin Policy).
| Skenario | Sumber Permintaan | Sumber Tujuan | Perlu CORS? |
|---|---|---|---|
| Domain Sing Padha | http://example.com | http://example.com/api | Tidak |
| Port Sing Beda | http://example.com:8080 | http://example.com:3000/api | Ya |
| Protokol Sing Beda | http://example.com | https://example.com/api | Ya |
| Domain Sing Beda | http://example.com | http://api.example.com/api | Ya |
CORS dikelola liwat headers HTTP ing server. Nalika browser nggawe panjalukan cross-origin, server luwih banter menehi tanggapan kanthi headers CORS tartamtu. Headers iki ngumumake marang browser sumber daya endi sing diidini, metode HTTP endi sing bisa digunakake, lan header khas endi sing bisa dikirimake. Header paling penting sing dikirimake dening server yaiku Access-Control-Allow-Origin. Header iki medharake sumber daya endi sing diijini kanggo diakses. Sampeyan bisa nggunakake siji sumber, sawetara sumber, utawa wildcard (*). Kanthi nggunakake wildcard, kabeh sumber diidini, sing bisa dadi risiko keamanan.
- Fitur Cross-Origin Resource
- Access-Control-Allow-Origin: Nemtokake sumber daya sing diijini.
- Access-Control-Allow-Methods: Nemtokake metode HTTP sing diijini.
- Access-Control-Allow-Headers: Nemtokake header khusus sing diijini.
- Access-Control-Expose-Headers: Nemtokake header endi sing bisa diakses dening browser.
- Access-Control-Allow-Credentials: Nemtokake manawa kredensial (cookies, otentikasi HTTP) bisa dikirim.
CORS ndhukung rong jinis panjalukan, yaiku panjalukan sing sederhana (simple requests) lan panjalukan preflight (preflight requests). Panjalukan sing sederhana yaiku panjalukan sing memenuhi syarat tartamtu (contone, nggunakake metode GET, HEAD, utawa POST, lan nggunakake header tartamtu). Panjalukan preflight, ing sisih liya, minangka panjalukan sing luwih rumit sing dikirimake menyang server nggunakake metode OPTIONS kanggo mriksa apa panjalukan sing nyata bisa dikirim kanthi aman.
CORS lan Keamanan
Sanadyan CORS dirancang kanggo nambah keamanan aplikasi web, nanging yen dikonfigurasi kanthi salah, bisa dadi celah keamanan. Contone, nalika joker karakter (*) digunakake ing header Access-Control-Allow-Origin, bisa ndadekake situs web sing ala ngakses data sensitif. Mula, penting banget kanggo nemtokake sumber daya endi sing diperbolehake kanthi bener.
Aspek keamanan liyane sing kudu diperhatikan yaiku panggunaan header Access-Control-Allow-Credentials. Header iki ngidini kredensial (cookies, otentikasi HTTP) dikirimake nganggo panjalukan cross-origin. Yen header iki diaktifake kanthi keliru, serangan jinis cross-site scripting (XSS) bisa luwih mbebayani.
CORS lan Kinerja
Konfigurasi CORS uga bisa duwe pangaruh tumrap kinerja. Panjalukan preflight njalari tambahan panjalukan HTTP kanggo saben panjalukan cross-origin. Kahanan iki luwih parah nalika aplikasi nggawe panjalukan cross-origin kanthi kerep. Mula, kanggo ngurangi panjalukan preflight, bisa digunakake sawetara teknik optimisasi. Contone, nggunakake panjalukan sing sederhana utawa nggunakake mekanisme caching ing server bisa nambah kinerja.
Penting kanggo nguji lan ngawasi konfigurasi CORS kanthi bener. Nggunakake alat pangembang browser utawa alat uji CORS khusus bisa mbantu nemokake lan ngatasi kesalahan CORS. Kajaba iku, kanggo njamin header CORS wis disetel kanthi bener, audit kudu dilakoni kanthi rutin ing server.
Kesalahan CORS lan Solusine

Cross-Origin Resource Sharing (CORS) kesalahan iku sawijining masalah umum sing muncul nalika proses pangembangan web. Kesalahan iki muncul nalika kaca web nyoba ngakses sumber daya saka domain sing beda (contone, file JavaScript, CSS, utawa data API). Browser segara amarga alasan keamanan, ngetrapake kebijakan sumber sing padha (same-origin policy) lan kebijakan iki, kanthi standar, nyegah panjalukan saka sumber beda. CORS, ditujukan kanggo ngurangi pembatasan iki lan menehi pertukaran data sing aman antar sumber. Nanging, konfigurasi sing salah utawa setelan sing ilang bisa nyebabake kesalahan CORS.
| Kode Kesalahan | Deskripsi | Solusi Potensial |
|---|---|---|
| Tidak ada header 'Access-Control-Allow-Origin' ing sumber daya sing dijaluk. | Server ora ngandhut header 'Access-Control-Allow-Origin' kanggo sumber daya sing dijaluk. | Atur header 'Access-Control-Allow-Origin' ing server. |
| Header 'Access-Control-Allow-Origin' ngandhut nilai 'null' sing ora valid. | Header 'Access-Control-Allow-Origin' ngandhut nilai 'null' sing ora valid. | Atur domain sing bener utawa nilai '*' (kanggo kabeh sumber) ing server. |
| Cross-Origin Request Blokir: Kebijakan Sumber Sing Padha nyegah maca sumber daya remote. | Kebijakan Sumber Sing Padha, mblokir akses menyang sumber remote. | Priksa konfigurasi CORS lan setel ijin sing perlu ing server. |
| Kanal preflight CORS gagal. | Panjalukan preflight (preflight request) ora sukses. | Atur headers CORS sing bener kanggo panjalukan OPTIONS ing server. |
Ngerti lan ndandani kesalahan CORS iku penting banget supaya aplikasi web bisa mlaku tanpa masalah. Kesalahan iki biasane dituduhake lewat pesen kesalahan rinci ing konsol browser. Pesan kasebut menehi petunjuk penting kanggo nemokake sumber kesalahan lan solusi potensial. Contone, yen pesan kesalahan nyatakake yen server ora duwe header 'Access-Control-Allow-Origin', iki nuduhake manawa header iki kudu dikonfigurasi bener ing server. Uga, yen panjalukan preflight gagal, iki nuduhake yen server ora ngatasi panjalukan OPTIONS kanthi bener.
Kesalahan CORS lan Metode Solusi
- Ngonfigurasi Header 'Access-Control-Allow-Origin': Atur header iki ing server kanthi bener supaya bisa nuduhake domain sing diidini sing bisa ngakses sumber daya.
- Ngatur Panjalukan Preflight: Priksa manawa server sampeyan ngatasi panjalukan OPTIONS kanthi bener.
- Gunakake Proxy Server: Sampeyan bisa nggunakake server proxy sing ngalihake panjalukan liwat server sampeyan kanggo ngatasi masalah CORS.
- Gumantung JSONP (Ing Syarat Tertentu): Metode JSONP (JSON with Padding) bisa digunakake kanggo panjalukan GET, nanging iki ora aman.
- Mriksa Pesen Kesalahan kanthi Teliti: Pesen kesalahan ing konsol browser minangka informasi penting kanggo mangerteni sumber masalah.
- Tool lan Ekstensi CORS: Ekstensi browser utawa alat online bisa mbantu sampeyan ngenali lan ndandani kesalahan CORS.
Solusi kanggo kesalahan CORS umume ana gegayutan karo konfigurasi ing server. Nanging, ing sawetara kondisi, solusi bisa digawé ing sisi klien uga. Contone, nggunakake server proxy utawa nyoba metode alternatif kaya JSONP bisa mbantu ngatasi masalah CORS. Nanging, penting banget kanggo ngerti manawa solusi kaya iki kadang ora dadi pilihan sing terbaik lan bisa duwe risiko keamanan. Solusi paling aman lan lestari yaiku ngatur header CORS sing bener ing server. Konfigurasi CORS sing bener ora mung njamin keamanan nanging uga nggampangake pertukaran data antar sumber.
Salah sawijining poin paling penting babagan CORS yaiku keamanan. Sanajan dirancang minangka mekanisme kanggo nambah keamanan aplikasi web, konfigurasi sing salah bisa mbuka risiko keamanan. Contone, yen header 'Access-Control-Allow-Origin' diatur karo '*', iki bakal ngidini kabeh domain ngakses sumber daya, sing sregep banget. Mula, penting supaya konfigurasi CORS tersebar lan ijin mung diberikan kanggo sumber daya sing dipercaya. Pangembang web kudu ngerti kepriye CORS makarya lan kemungkinan risiko keamanan sing bisa muncul.
Strategi Tingkatake Keamanan CORS
Cross-Origin Resource Sharing (CORS) iku mekanisme kritis kanggo njaga keamanan aplikasi web. Nanging, yen diatur kanthi salah utawa kurang langkah keamanan sing cukup, CORS bisa nambah risiko keamanan. Mula, penting kanggo ngetrapake sawetara strategi kanggo nambah keamanan CORS. Strategi iki dirancang kanggo nyegah akses sing ora sah, nglindhungi data sensitif, lan nambah keamanan umum aplikasi web.
Langkah pisanan kanggo ningkatake keamanan CORS yaiku ngonfigurasi header Origin kanthi bener. Ing server, mung ngidini akses saka sumber sing aman lan dipercaya. Hindari penggunaan wildcard (*), amarga bisa nambah risiko keamanan kanthi ngidini akses menyang kabeh sumber. Saliyane, nggawe dhaptar sumber tartamtu lan menehi akses mung menyang sumber iki.
- Strategi Keamanan CORS
- Ngidini Hanya Sumber Tertentu: Tinimbang wildcard (*), luwih becik nemtokake lan ngidini sumber sing dipercaya lan terverifikasi.
- Ngatur Panjalukan Preflight kanthi Bener: Ngolah panjalukan OPTIONS kanthi cermat lan priksa header sing tepat.
- Gunakake Header Aman: Nyetel header Access-Control-Allow-Headers sacara bener.
- Nambah Keamanan Otentikasi: Nggawe langkah-langkah keamanan tambahan kanggo cookies lan header otentikasi.
- Ningkatake Manajemen Kesalahan: Ngasilake sistem monitoring kanggo nemokake lan ndandani konfigurasi CORS sing salah.
- Ngatur Audit Keamanan Rutin: Priksa konfigurasi CORS sampeyan kanthi rutin lan kanyataake panganyaran.
Ing tabel daun, ana sawetara header sing bisa digunakake kanggo nambah keamanan CORS. Ngetokke header-header iki kanthi bener iku penting kanggo nyegah akses sing ora sah lan nglindhungi data:
| Header | Deskripsi | Nilai Conto |
|---|---|---|
| Access-Control-Allow-Origin | Nemtokake sumber daya sing diidini. | https://example.com |
| Access-Control-Allow-Methods | Nemtokake metode HTTP sing diijini. | GET, POST, PUT, DELETE |
| Access-Control-Allow-Headers | Nemtokake header sing diijini. | Content-Type, Authorization |
| Access-Control-Allow-Credentials | Mengijinkan pengiriman kredensial (cookies, header otentikasi). | true |
Konfigurasi CORS sing bener kudu dilakoni kanthi rutin lan dikontrol. Sakwise ana celah keamanan lan ancaman anyar, penting kanggo nyetel kebijakan CORS kanggo ngadhepi tantangan lan ancaman iki. Uga, kabeh pustaka lan layanan pihak katelu sing digunakake ing aplikasi web kudu diinspeksi kanggo kebijakan CORS. Iki kanggo njaga risiko keamanan supaya tetep minimal lan njamin keamanan aplikasi web sakabèhé.
Kebijakan CORS lan Contoh Penerapan
Cross-Origin Resource Sharing (CORS) kebijakan nerangake mekanisme keamanan sing ngatur akses sumber daya menyang web page sing dimuat saka sumber (origin) ing panggonan liya. Kebijakan iki dirancang kanggo nyegah situs web sing ala supaya ora bisa ngakses data sensitif, lan nambah keamanan pangguna. Dhasar CORS ngidini aplikasi web mung njaluk data saka sumber sing dipercaya lan diidini, saengga bisa nyegah akses sing ora sah.
Penerapan kebijakan CORS ditentokake dening konfigurasi ing server. Server nyritakake header HTTP supaya teges sumber daya endi sing bisa diakses. Browser mriksa header iki kanggo nemtokake manawa sumber sing njaluk kuwi diidini utawa ora. Yen sumber ora diidini, browser bakal mblokir permintaan lan nuduhake pesen kesalahan ing konsol JavaScript. Iki ngijini aplikasi web bisa mlaku kanthi aman tanpa nindakake perubahan ing sisi klien.
| Header HTTP | Deskripsi | Nilai Conto |
|---|---|---|
| Access-Control-Allow-Origin | Nemtokake sumber daya sing diidini. | https://example.com |
| Access-Control-Allow-Methods | Nemtokake metode HTTP sing diijini. | GET, POST, PUT |
| Access-Control-Allow-Headers | Nemtokake header khusus sing diidini. | X-Custom-Header, Content-Type |
| Access-Control-Allow-Credentials | Nemtokake manawa kredensial (cookies, header otentikasi) bisa dikirim. | true |
Ngatur kebijakan CORS bisa dadi tantangan lan salah konfigurasi bisa nambah kemungkinan ancaman keamanan. Contone, nggunakake Access-Control-Allow-Origin: *, tegesé kabeh sumber bisa diakses, sing bisa dadi masalah ing kahanan sing tartamtu. Mula, penting kanggo ngatur kebijakan CORS kanthi becik lan mung ngidini sumber daya sing dibutuhake. Para ahli keamanan nyaranake supaya ngontrol CORS lan nindakake tes keamanan secara rutin.
Penerapan CORS ing Browser Sing Beda-Beda
Penerapan kebijakan CORS bisa beda-beda antar browser. Nanging umume, kabeh browser modern ndhukung standar CORS lan bisa ngoperasikake prinsip dhasar sing padha. Browser mriksa header HTTP sing dikirimake server kanggo nemtokake kuitas sumber sing dituju. Yen sumber ora diidini, browser bakal mblokir permintaan lan nuduhake pesen kesalahan marang pangguna.
Ngendi, nalika ngatur lan nguji kebijakan CORS, bisa kanthi nggunakake langkah-langkah ing ngisor iki:
- Atur Header CORS ing Server: Atur header
Access-Control-Allow-Origining server kanggo netepake sumber sing diidini.