Cross-Origin Resource Sharing (CORS) at Web Security

  • Bahay
  • Heneral
  • Cross-Origin Resource Sharing (CORS) at Web Security
Cross-Origin Resource Sharing (CORS) at Web Security 10788 Ang blog post na ito ay komprehensibong sumasaklaw sa Cross-Origin Resource Sharing (CORS), isang kritikal na bahagi ng web security. Ipinapaliwanag nito kung ano ang CORS at kung bakit ito mahalaga para sa mga web application, habang nagbibigay din ng impormasyon tungkol sa kasaysayan at pag-unlad nito. Ang mga pangunahing benepisyo ng paggamit ng CORS ay naka-highlight, at ang mga hakbang sa pagsasaayos ay ipinaliwanag sa isang simpleng gabay. Sinisiyasat nito ang mga teknikal na detalye, sinusuri ang mga error sa CORS at mga solusyon nang detalyado. Ang mga estratehiya at mga halimbawa ng pagpapatupad ng patakaran upang mapahusay ang seguridad ng CORS ay ipinakita. Tinutugunan din nito ang mga karaniwang maling kuru-kuro tungkol sa CORS at ibinubuod ang pinakamahalagang puntong dapat maunawaan. Ito ay nagsisilbing isang komprehensibong gabay sa CORS para sa mga web developer.

Ang post sa blog na ito ay komprehensibong sumasaklaw sa Cross-Origin Resource Sharing (CORS), isang kritikal na bahagi ng seguridad sa web. Ipinapaliwanag nito kung ano ang CORS at kung bakit ito mahalaga para sa mga web application, kasama ang kasaysayan at ebolusyon nito. Itinatampok nito ang mga pangunahing benepisyo ng paggamit ng CORS at ipinapaliwanag ang mga hakbang sa pagsasaayos gamit ang isang simpleng gabay. Sinisiyasat nito ang mga teknikal na detalye, sinusuri ang mga error sa CORS at mga solusyon nang detalyado. Ang mga estratehiya at mga halimbawa ng pagpapatupad ng patakaran para sa pagpapahusay ng seguridad ng CORS ay ipinakita. Tinutugunan din nito ang mga karaniwang maling kuru-kuro tungkol sa CORS at ibinubuod ang pinakamahalagang puntong dapat maunawaan. Ito ay isang komprehensibong gabay sa CORS para sa mga web developer.

Ano ang CORS at ang Kahalagahan nito para sa mga Web Application

Cross-Origin Resource Ang CORS ay isang mekanismo ng seguridad na ginagamit ng mga web browser upang payagan o harangan ang isang web page sa pag-access ng mga mapagkukunan mula sa ibang domain. Sa pangkalahatan, pinapayagan nito ang isang web application na kontrolin ang pag-access nito sa mga mapagkukunan (hal., mga API, font, larawan) sa labas ng sarili nitong domain. Ang CORS ay isang pundasyon ng modernong web security at gumaganap ng mahalagang papel sa pag-secure ng mga web application.

Ang CORS ay partikular na mahalaga sa mga makabagong diskarte sa web development tulad ng mga single-page na application (SPA) at mga arkitektura ng microservice. Ang mga application na ito ay madalas na umaasa sa mga API at iba pang mapagkukunan sa mga domain. Sa pamamagitan ng pagtiyak sa ligtas na pagbabahagi ng mga mapagkukunang ito, pinipigilan ng CORS ang mga nakakahamak na site sa pag-access ng sensitibong data. Kung wala ang mekanismo ng CORS, maaaring gumamit ng JavaScript ang anumang website upang magnakaw o magbago ng data ng user ng isa pang site.

    Mga benepisyo ng CORS

  • Nagbibigay-daan ito sa mga web application na magpalitan ng data nang ligtas mula sa iba't ibang domain.
  • Pinipigilan nito ang mga nakakahamak na website na ma-access ang data ng user.
  • Pinapabuti ang seguridad ng mga API at iba pang serbisyo sa web.
  • Sinusuportahan ang secure na pagpapatupad ng mga makabagong diskarte sa web development (SPA, microservices).
  • Pinaliit ang mga isyu sa pagiging tugma sa cross-browser.
  • Nagbibigay ito sa mga developer ng butil na kontrol sa kung aling mga mapagkukunan ang maaaring ma-access mula sa kung aling mga domain.

Mahalaga ang CORS sa seguridad sa web dahil gumagana ito kasabay ng Same-Origin Policy (SOP) upang protektahan ang mga web application at data ng user. Pinapayagan ng SOP ang isang web page na ma-access ang mga mapagkukunan lamang sa parehong domain, protocol, at port. Ang CORS, sa kabilang banda, ay nagpapahinga sa SOP, na nagbibigay-daan sa pag-access sa mga mapagkukunan mula sa iba't ibang mga domain sa ilalim ng ilang mga kundisyon. Nagbibigay-daan ito sa mga web application na maging mas flexible at functional habang pinapanatili din ang seguridad.

Ang tamang configuration ng CORS ay mahalaga para sa seguridad ng mga web application. kritikal na kahalagahan Ang isang maling na-configure na patakaran ng CORS ay maaaring gawing mahina ang mga web application sa iba't ibang mga kahinaan sa seguridad. Samakatuwid, ang pag-unawa kung paano gumagana ang CORS at kung paano ito i-configure nang tama ay mahalaga para sa bawat web developer.

Impormasyon Tungkol sa Kasaysayan at Pag-unlad ng CORS

Cross-Origin Resource Ang CORS ay isang mahalagang bahagi ng modernong mga web application, ngunit ang mga pinagmulan at ebolusyon ng teknolohiyang ito ay mahalaga sa pag-unawa sa kasalukuyang kahalagahan nito. Sa una, ang mga web browser ay nililimitahan ng Same-Origin Policy, na nagpapahintulot sa isang mapagkukunan na mag-access ng mga mapagkukunan lamang mula sa sarili nitong domain. Lubos nitong nilimitahan ang pagbuo ng mga modernong web application na nangangailangan ng pagkuha ng data mula sa iba't ibang domain. Ang CORS ay binuo upang lampasan ang mga paghihigpit na ito at paganahin ang mga secure na cross-origin na kahilingan.

Nagsimula ang pagbuo ng CORS bilang tugon sa mga praktikal na hamon na kinakaharap ng mga web developer. Sa partikular, ang pangangailangang pagsama-samahin ang data mula sa magkakaibang pinagmulan at pag-access sa mga API ay nangangailangan ng solusyon upang gawing mas dynamic at mayaman sa feature ang mga web application. Upang matugunan ang pangangailangang ito, ang World Wide Web Consortium (W3C) ay nagtatag ng mga pamantayan upang tukuyin kung paano dapat makipag-ugnayan ang mga browser at server. Ang mga pamantayang ito ay naglalayong mag-alok sa mga developer ng higit na kakayahang umangkop habang pinapaliit din ang mga kahinaan sa seguridad.

taon Pag-unlad Paliwanag
Maagang 2000s Unang Pangangailangan Napagtanto ng mga web developer ang pangangailangang kumuha ng data mula sa iba't ibang domain.
2004 Mga Unang Solusyon Lumitaw ang mga workaround tulad ng JSONP, ngunit naglalaman ang mga ito ng mga kahinaan sa seguridad.
2009 Pag-aaral sa W3C Ang W3C ay nagsimulang bumuo ng mga pamantayan para sa CORS.
2010+ Laganap na Paggamit Ang CORS ay nagsisimula nang suportahan ng mga modernong browser at nagiging malawakang ginagamit.

Ang ebolusyon ng CORS ay patuloy na nakatuon sa balanse sa pagitan ng web security at functionality. Bagama't sapat ang mga maagang pagpapatupad para sa mga simpleng kahilingan, pinalawak ang mga ito sa paglipas ng panahon upang suportahan ang mas kumplikadong mga sitwasyon. Halimbawa, ang mekanismo ng kahilingan sa preflight ay nagbibigay ng karagdagang layer ng seguridad sa pamamagitan ng pag-verify kung pinapayagan ng server ang isang ibinigay na kahilingang cross-origin. Ang mga ito at katulad na mga pag-unlad ay ginawa ang CORS na isang pangunahing teknolohiya na nagbibigay-daan sa ligtas at mahusay na operasyon ng mga modernong web application.

Mga Yugto ng Pag-unlad ng CORS

  1. Mga Limitasyon ng Patakaran sa Parehong Pinagmulan
  2. Ang Pag-usbong ng Mga Maagang Solusyon Tulad ng JSONP (Kasama ang Mga Kahinaan Nito)
  3. Pagbuo ng mga Pamantayan ng W3C
  4. Pagpapakilala ng Preflight Request Mechanism
  5. Laganap na Pag-ampon ng Mga Makabagong Browser

Ngayon, ang CORS ay isang kritikal na mekanismo na nagbibigay-daan sa mga web application na ligtas na makipagpalitan ng data mula sa iba't ibang mga mapagkukunan. gayunpaman, CORS‘Ang wastong pagsasaayos at pagpapatupad ng CORS ay mahalaga para maiwasan ang mga kahinaan sa seguridad. Ang isang maling na-configure na patakaran ng CORS ay maaaring magbigay-daan sa mga nakakahamak na aktor na ma-access ang sensitibong data. Samakatuwid, dapat na lubusang maunawaan ng mga web developer ang mga pangunahing prinsipyo ng CORS at wastong paraan ng pagsasaayos.

Bakit Gumamit ng CORS? Mga Pangunahing Benepisyo

Cross-Origin Resource Ang CORS ay isang mahalagang mekanismo para sa pagpapahusay ng seguridad at paggana ng mga modernong web application. Nag-aalok ito sa mga web developer ng makabuluhang flexibility sa pamamagitan ng pagpapagana ng secure na pagpapalitan ng data sa pagitan ng mga source na hindi pareho ang pinagmulan. Ang kakayahang umangkop na ito ay nagpapadali sa pagsasama ng mga serbisyo sa mga domain at nagpapayaman sa karanasan ng user.

Ang isa sa mga pangunahing benepisyo ng CORS ay ang pagpapatupad ng mga web browser parehong patakaran sa pinagmulan Nilalampasan nito ang mga paghihigpit na ipinataw ng Same-Origin Policy. Ang patakarang ito ay nagbibigay-daan sa isang web page na ma-access lamang ang mga mapagkukunan na may parehong protocol, parehong port (kung tinukoy), at parehong host. Ligtas na pinapakalma ng CORS ang mga paghihigpit na ito sa pamamagitan ng pagpayag sa mga server na tukuyin kung aling mga pinagmulan ang papayagan ang mga kahilingan.

Mga kalamangan ng CORS

  • Nagbibigay ng secure na access sa mga API sa iba't ibang domain.
  • Nakakatulong itong gawing mas modular at scalable ang mga web application.
  • Nag-aalok ito sa mga developer ng higit na kakayahang umangkop at kontrol.
  • Nagbibigay-daan ito sa mga pagsasama na nagpapayaman sa karanasan ng user.
  • Ginagawa nitong mas secure ang mga web application sa pamamagitan ng pagbabawas ng mga kahinaan sa seguridad.

Sa talahanayan sa ibaba, maaari mong suriin ang mga pangunahing tampok at pakinabang ng CORS nang mas detalyado:

Tampok Paliwanag Advantage
Inter-Ethnic na Kahilingan Mga kahilingan sa HTTP mula sa iba't ibang domain. Nagbibigay-daan ito sa pagbabahagi ng data at pagsasama ng serbisyo.
Mga Kahilingan sa Preflight MGA OPSYON Mga kahilingang ginawa gamit ang pamamaraan, pagsuri sa patakaran ng CORS ng server. Tinitiyak nito ang ligtas na paglilipat ng data at pinipigilan ang mga potensyal na kahinaan sa seguridad.
Pinahihintulutang Pinagmulan Isang listahan ng mga domain kung saan pinapayagan ng server ang mga kahilingan. Nagbibigay ng kontrolado at ligtas na pag-access.
Suporta sa Kredensyal Pinapagana ang pagbabahagi ng impormasyon gaya ng cookies at mga header ng pagpapatunay. Sinusuportahan ang mga session ng user at mga personalized na karanasan.

Ang wastong pagsasaayos ng CORS ay kritikal sa seguridad ng mga web application. Ang isang maling na-configure na patakaran ng CORS ay maaaring magbigay-daan sa mga umaatake na ma-access ang sensitibong data o magsagawa ng malisyosong code. Samakatuwid, ang maingat na pagpaplano at pagpapatupad ng CORS configuration ay mahalaga para sa pagtiyak ng web security.

Ano ang Mga Hakbang sa Pag-configure ng CORS? Isang Simpleng Gabay

Cross-Origin Resource Ang pagsasaayos ng CORS ay mahalaga para sa pag-secure ng iyong mga web application at pag-streamline ng palitan ng data sa pagitan ng iba't ibang pinagmulan. Binibigyang-daan ka ng configuration na ito na kontrolin ang access ng isang web page sa mga mapagkukunan sa mga domain. Bagama't ang isang maling na-configure na patakaran sa CORS ay maaaring humantong sa mga kahinaan sa seguridad, ang isang maayos na na-configure na patakaran ng CORS ay maaaring magpapataas ng seguridad ng iyong application at matiyak ang maayos na operasyon nito.

Bago simulan ang configuration ng CORS, mahalagang matukoy ang mga pangangailangan ng iyong application at ang mga mapagkukunang kailangan nito upang ma-access. Makakatulong ito sa iyong maunawaan kung aling mga domain ang pinagkakatiwalaan at kung aling mga pamamaraan ng HTTP (GET, POST, PUT, DELETE, atbp.) ang dapat payagan. Ang pagsusuri na ito ay magbibigay-daan sa iyo na gumawa ng mas matalinong mga desisyon tungkol sa mga susunod na hakbang sa pagsasaayos.

    Mga Hakbang sa Pag-configure ng CORS

  1. Magsagawa ng Pagsusuri ng Pangangailangan: Tukuyin kung anong mga mapagkukunan ang kailangan mong ma-access.
  2. Configuration sa Gilid ng Server: Itakda ang naaangkop na mga header ng HTTP sa gilid ng server.
  3. Itakda nang Tama ang Origin Header: Tukuyin ang mga pinapayagang domain.
  4. Tukuyin ang Mga Paraan ng HTTP: Tukuyin ang mga pinapayagang pamamaraan (GET, POST, atbp.).
  5. Ayusin ang Mga Setting ng Mga Kredensyal: Payagan ang pagpapadala ng cookies at mga kredensyal.
  6. Pamamahala ng Error: Pangasiwaan nang maayos ang mga error sa CORS.

Sa panahon ng pagsasaayos ng CORS, mahalagang magtakda ng naaangkop na mga header ng HTTP sa server. Tinutukoy ng Access-Control-Allow-Origin header kung aling mga domain ang makaka-access sa mapagkukunan. Tinutukoy ng header ng Access-Control-Allow-Methods kung aling mga pamamaraan ng HTTP ang maaaring gamitin. Tinutukoy ng header ng Access-Control-Allow-Headers kung aling mga custom na header ang maaaring isama sa kahilingan. Ang wastong pag-configure sa mga header na ito ay nagsisiguro na ang iyong application ay gumagana nang secure at sumusunod.

HTTP Header Paliwanag Halimbawang Halaga
Access-Control-Allow-Origin Pinapayagan ang mga pinagmulang domain https://example.com
Access-Control-Allow-Methods Pinapayagan ang mga pamamaraan ng HTTP GET, POST, PUT
Access-Control-Allow-Headers Pinapayagan ang mga custom na pamagat Uri ng Nilalaman, Awtorisasyon
Access-Control-Allow-Credentials Huwag hayaang magpadala ng cookies totoo

Mahalagang pangasiwaan nang maayos ang mga error sa CORS at magbigay ng makabuluhang feedback sa iyong mga user. Ang mga error sa CORS na lumalabas sa browser console ay kadalasang senyales ng isang maling na-configure na patakaran sa CORS. Upang malutas ang mga error na ito, suriin ang iyong configuration sa panig ng server at gumawa ng anumang kinakailangang pagwawasto. Bukod pa rito, upang mapabuti ang seguridad ng iyong application, CORS Regular na suriin ang iyong mga patakaran at panatilihing updated ang mga ito.

Cross-Origin Resource Sharing: Mga Teknikal na Detalye

Cross-Origin Resource Ang CORS ay isang mekanismo na nagpapahintulot sa mga web browser na payagan ang mga web page na na-load mula sa isang pinanggalingan na ma-access ang mga mapagkukunan mula sa ibang pinagmulan. Sa pangkalahatan, pinapayagan nito ang isang web page na humiling ng mga mapagkukunan mula sa ibang domain, protocol, o port. Ang mekanismong ito ay kritikal para matugunan ang mga hinihingi ng mga modernong web application. Gayunpaman, kung hindi na-configure nang tama, maaari itong magdulot ng malubhang panganib sa seguridad.

Bago suriin ang mga teknikal na detalye ng CORS, mahalagang maunawaan ang konsepto ng pinagmulan. Ang isang mapagkukunan ay binubuo ng isang kumbinasyon ng protocol (http/https), domain (example.com), at port (80/443). Kung magkaiba ang alinman sa tatlong sangkap na ito, ang dalawang mapagkukunan ay ituturing na magkaiba. Ang CORS ay batay sa Same-Origin Policy, isang panukalang panseguridad na ipinatupad ng mga browser.

Sitwasyon Humiling ng Pinagmulan Target na Pinagmulan Kinakailangan ba ang CORS?
Parehong Domain http://example.com http://example.com/api Hindi
Iba't ibang Port http://example.com:8080 http://example.com:3000/api Oo
Iba't ibang Protocol http://example.com https://example.com/api Oo
Iba't ibang Domain http://example.com http://api.example.com/api Oo

Ang CORS ay kinokontrol sa gilid ng server sa pamamagitan ng mga header ng HTTP. Kapag gumawa ng cross-origin request ang isang browser, tumutugon ang server gamit ang mga partikular na CORS header. Sinasabi ng mga header na ito sa browser kung aling mga mapagkukunan ang pinapayagang ma-access, kung aling mga pamamaraan ng HTTP (GET, POST, atbp.) ang maaaring gamitin, at kung aling mga custom na header ang maaaring ipadala. Ang pinakamahalagang header na ipinadala ng server ay, Access-Control-Allow-Origin Tinutukoy ng header na ito kung aling mga mapagkukunan ang pinapayagang ma-access. Ang halaga ay maaaring isang mapagkukunan, maramihang mapagkukunan, o isang wildcard (*). Ang paggamit ng wildcard na character ay nagbibigay ng access sa lahat ng mapagkukunan, ngunit maaari itong maging panganib sa seguridad.

    Cross-Origin Resource Features

  • Access-Control-Allow-Origin: Tinutukoy ang pinapayagang mga mapagkukunan.
  • Access-Control-Allow-Methods: Tinutukoy ang pinapayagang mga pamamaraan ng HTTP.
  • Access-Control-Allow-Header: Tinutukoy ang mga custom na header na pinapayagan.
  • Access-Control-Expose-Header: Tinutukoy ang mga header na maa-access ng browser.
  • Access-Control-Allow-Credentials: Isinasaad kung pinapayagan ang pagpapadala ng mga kredensyal (cookies, HTTP authentication).

Sinusuportahan ng mekanismo ng CORS ang dalawang uri ng mga kahilingan: mga simpleng kahilingan at mga kahilingan sa preflight. Ang mga simpleng kahilingan ay mga kahilingang nakakatugon sa ilang partikular na kundisyon (halimbawa, gamit ang GET, HEAD, o POST na pamamaraan at paggamit ng mga partikular na header). Ang mga kahilingan sa preflight, sa kabilang banda, ay mas kumplikadong mga kahilingan. Ang isang paunang kahilingan ay ipinadala sa server gamit ang OPTIONS na paraan upang i-verify na ang aktwal na kahilingan ay maaaring ipadala nang ligtas.

CORS at Seguridad

Habang ang CORS ay idinisenyo upang pataasin ang seguridad ng mga web application, maaari itong lumikha ng mga kahinaan sa seguridad kapag hindi wastong na-configure. Halimbawa, Access-Control-Allow-Origin Ang paggamit ng wildcard na character (*) sa pamagat ay maaaring magbigay-daan sa isang nakakahamak na website na ma-access ang sensitibong data. Samakatuwid, Mahalagang maingat na matukoy kung aling mga mapagkukunan ang pinapayagang ma-access.

Ang isa pang punto na dapat isaalang-alang sa mga tuntunin ng seguridad ay, Access-Control-Allow-Credentials Ang header na ito ay nagbibigay-daan sa mga kredensyal (cookies, HTTP authentication) na maipadala kasama ng mga cross-origin na kahilingan. Kung hindi sinasadyang na-enable ang header na ito, maaaring maging mas mapanganib ang mga pag-atake gaya ng cross-site scripting (XSS).

CORS at Pagganap

Ang pagsasaayos ng CORS ay maaari ding makaapekto sa pagganap. Ang mga kahilingan sa preflight ay nagdudulot ng karagdagang kahilingan sa HTTP na maipadala para sa bawat kahilingang cross-origin. Maaari itong negatibong makaapekto sa pagganap, lalo na para sa mga application na gumagawa ng madalas na mga cross-origin na kahilingan. Samakatuwid, maaaring gamitin ang iba't ibang mga diskarte sa pag-optimize upang mabawasan ang mga kahilingan sa preflight. Halimbawa, ang paggamit ng mga simpleng kahilingan o mga mekanismo ng pag-cache sa gilid ng server ay maaaring mapabuti ang pagganap.

Ang wastong pagsubok at pagsubaybay sa pagsasaayos ng CORS ay mahalaga. Gamit ang mga tool ng developer ng browser o nakalaang mga tool sa pagsubok ng CORS, maaaring makilala at malutas ang mga error sa CORS. Bukod pa rito, dapat isagawa ang mga regular na pagsusuri sa panig ng server upang matiyak na tama ang pagkakatakda ng mga header ng CORS.

Impormasyon Tungkol sa Mga Error at Solusyon sa CORS

Cross-Origin Resource Ang mga error sa CORS ay isang karaniwang problemang nararanasan sa web development. Nagaganap ang mga error na ito kapag sinubukan ng isang web page na i-access ang mga mapagkukunan (hal., JavaScript file, CSS, o data ng API) mula sa ibang domain. Para sa mga kadahilanang pangseguridad, nagpapatupad ang mga browser ng patakaran sa parehong pinagmulan, na humaharang sa mga kahilingan mula sa iba't ibang pinagmulan bilang default. Ang CORS ay isang mekanismo na idinisenyo upang maibsan ang mga paghihigpit na ito at ligtas na makipagpalitan ng data sa pagitan ng iba't ibang mapagkukunan. Gayunpaman, ang mga maling pagsasaayos o nawawalang mga setting ay maaaring humantong sa mga error sa CORS.

Error Code Paliwanag Posibleng Solusyon
Walang header na 'Access-Control-Allow-Origin' sa hiniling na mapagkukunan. Hindi kasama sa server ang header na 'Access-Control-Allow-Origin' para sa hiniling na mapagkukunan. I-configure ang header na 'Access-Control-Allow-Origin' sa gilid ng server.
Ang header na 'Access-Control-Allow-Origin' ay naglalaman ng di-wastong halaga na 'null'. ‘Ang header na 'Access-Control-Allow-Origin' ay naglalaman ng di-wastong halaga ng 'null'. Itakda ang tamang domain name o '*' (para sa lahat ng mapagkukunan) sa gilid ng server.
Na-block ang Cross-Origin Request: Hindi pinapayagan ng Parehong Patakaran sa Pinagmulan ang pagbabasa ng remote na mapagkukunan. Pinipigilan ng Same Origin Policy ang pagbabasa ng remote na mapagkukunan. Suriin ang configuration ng CORS at magbigay ng mga kinakailangang pahintulot sa panig ng server.
Hindi nagtagumpay ang CORS preflight channel. Nabigo ang kahilingan ng CORS preflight. I-configure ang tamang CORS header para sa OPTIONS na kahilingan sa gilid ng server.

Ang pag-unawa at paglutas ng mga error sa CORS ay kritikal sa maayos na operasyon ng mga web application. Ang mga error na ito ay madalas na ipinapahiwatig ng mga detalyadong mensahe ng error sa browser console. Ang mga mensaheng ito ay nagbibigay ng mahahalagang pahiwatig sa pag-unawa sa pinagmulan ng error at mga posibleng solusyon. Halimbawa, kung ang isang mensahe ng error ay nagpapahiwatig na ang server ay hindi kasama ang header na 'Access-Control-Allow-Origin', kinakailangang i-configure ang header na ito nang naaangkop sa gilid ng server. Higit pa rito, ang pagkabigong mga kahilingan sa preflight ay maaaring magpahiwatig na ang server ay hindi maayos na pinangangasiwaan ang mga kahilingan sa OPTIONS.

Mga Error at Solusyon sa CORS

  • ‘Pag-configure ng 'Access-Control-Allow-Origin' Header: Sa panig ng server, itakda nang tama ang header na ito upang tukuyin kung aling mga domain ang makaka-access sa mapagkukunan.
  • Pangangasiwa sa Mga Kahilingan sa Preflight: Tiyaking pinangangasiwaan ng iyong server ang mga kahilingan sa OPTIONS nang tama.
  • Paggamit ng Proxy Server: Upang i-bypass ang mga isyu sa CORS, maaari kang gumamit ng proxy na nagruruta ng mga kahilingan sa pamamagitan ng sarili mong server.
  • Paggamit ng JSONP (sa mga limitadong kaso): Para sa mga kahilingan sa GET, maaaring gamitin ang JSONP (JSON with Padding) technique sa ilang sitwasyon, ngunit hindi gaanong secure ang paraang ito.
  • Maingat na Suriin ang Mga Mensahe ng Error: Ang mga mensahe ng error sa browser console ay naglalaman ng mahalagang impormasyon upang maunawaan ang pinagmulan ng problema.
  • Mga Plugin at Tool ng CORS: Makakatulong sa iyo ang mga add-on ng browser o online na tool na makita at ayusin ang mga error sa CORS.

Ang paglutas ng mga error sa CORS ay karaniwang nagsasangkot ng mga configuration sa panig ng server. Gayunpaman, sa ilang mga kaso, magagamit din ang mga solusyon sa panig ng kliyente. Halimbawa, maaaring malampasan ang mga isyu sa CORS sa pamamagitan ng paggamit ng proxy o pagsubok ng mga alternatibong paraan ng pagkuha ng data tulad ng JSONP. Gayunpaman, mahalagang tandaan na ang mga solusyong ito ay hindi palaging ang pinakamahusay na opsyon at maaaring magdulot ng mga panganib sa seguridad. Ang pinaka-secure at permanenteng solusyon ay ang pag-configure ng tamang CORS header sa server. Ang wastong pag-configure ng CORS ay nagsisiguro ng parehong seguridad at nagbibigay-daan sa pagpapalitan ng data mula sa iba't ibang mga mapagkukunan.

Isa sa pinakamahalagang punto tungkol sa CORS ay, seguridad Habang ang CORS ay isang mekanismo na idinisenyo upang pataasin ang seguridad ng mga web application, ang mga maling configuration ay maaaring humantong sa mga kahinaan sa seguridad. Halimbawa, ang pagtatakda ng header na 'Access-Control-Allow-Origin' sa '*' ay nangangahulugan na ang lahat ng domain ay maaaring ma-access ang mapagkukunan, na maaaring maging panganib sa seguridad. Samakatuwid, mahalagang i-configure nang mabuti ang CORS at payagan lamang ang mga pinagkakatiwalaang source. Kailangang lubusang maunawaan ng mga web developer kung paano gumagana ang CORS at ang mga potensyal na panganib sa seguridad.

Mga Istratehiya upang Pagbutihin ang Seguridad ng CORS

Cross-Origin Resource Ang CORS ay isang kritikal na mekanismo para sa pag-secure ng mga web application. Gayunpaman, sa hindi wastong pagkaka-configure o nawawalang mga hakbang sa seguridad, maaaring humantong ang CORS sa mga potensyal na kahinaan sa seguridad. Samakatuwid, mahalagang ipatupad ang iba't ibang estratehiya upang mapahusay ang seguridad ng CORS. Ang mga diskarte na ito ay idinisenyo upang maiwasan ang hindi awtorisadong pag-access, protektahan ang sensitibong data, at palakasin ang pangkalahatang seguridad ng mga web application.

Ang unang hakbang sa pagpapabuti ng seguridad ng CORS ay, Ang Origin header ay na-configure nang tama. Sa panig ng server, ang mga pinagkakatiwalaan at awtorisadong mapagkukunan (mga pinanggalingan) lamang ang dapat na payagan ang pag-access. Iwasan ang paggamit ng mga wildcard (*), dahil pinapataas ng mga ito ang mga panganib sa seguridad sa pamamagitan ng pagpapahintulot ng access sa lahat ng mga source. Sa halip, isang listahan ng mga partikular na mapagkukunan ang dapat gawin at ang mga mapagkukunang iyon lamang ang dapat bigyan ng access.

    Mga Istratehiya ng CORS para sa Seguridad

  • Pinapayagan ang Mga Tukoy na Pinagmulan: * Sa halip, tukuyin ang mga tiyak at maaasahang pinagmulan.
  • Tamang Pamamahala ng Mga Kahilingan sa Preflight: Pangasiwaan nang mabuti ang mga kahilingan sa OPTIONS at tingnan kung may mga kinakailangang header.
  • Paggamit ng Safe Header: I-configure nang tama ang Access-Control-Allow-Headers header.
  • Pagpapatibay ng Authentication: Gumawa ng mga karagdagang hakbang sa seguridad para sa cookies at mga header ng pahintulot.
  • Pagpapabuti ng Pamamahala ng Error: Magpatupad ng mga monitoring system upang matukoy at maitama ang mga maling configuration ng CORS.
  • Pagsasagawa ng Regular na Pag-audit sa Seguridad: Regular na subukan at i-update ang iyong mga configuration ng CORS.

Ang talahanayan sa ibaba ay naglilista ng ilang mga header at ang kanilang mga paglalarawan na maaaring magamit upang mapahusay ang seguridad ng CORS. Ang wastong pag-configure ng mga header na ito ay mahalaga para maiwasan ang hindi awtorisadong pag-access at pagtiyak ng seguridad ng data.

Pamagat Paliwanag Halimbawang Halaga
Access-Control-Allow-Origin Tinutukoy ang mga mapagkukunan kung saan pinahihintulutan ang pag-access. https://example.com
Access-Control-Allow-Methods Tinutukoy ang pinapayagang mga pamamaraan ng HTTP. KUMUHA, I-POST, ILAGAY, I-DELETE
Access-Control-Allow-Headers Tinutukoy ang mga pinapayagang header. Uri ng Nilalaman, Awtorisasyon
Access-Control-Allow-Credentials Isinasaad kung pinapayagan ang pagpapadala ng impormasyong nagpapakilala (cookies, authorization header). totoo

Regular na i-audit ang mga configuration ng CORS at dapat i-update. Habang lumalabas ang mga bagong kahinaan at banta, mahalagang isaayos ang mga patakaran ng CORS nang naaayon. Bukod pa rito, dapat na suriin ang mga patakaran ng CORS ng lahat ng third-party na library at serbisyo na ginagamit ng web application. Maaari nitong mabawasan ang mga potensyal na panganib sa seguridad at matiyak ang pangkalahatang seguridad ng web application.

Mga Patakaran at Halimbawa ng Pagpapatupad ng CORS

Cross-Origin Resource Tinutukoy ng mga patakaran ng CORS ang mga mekanismo ng seguridad na naghihigpit sa mga web browser mula sa pag-access ng mga mapagkukunan mula sa isang pinagmulan (pinagmulan) sa mga mula sa ibang pinagmulan. Ang mga patakarang ito ay naglalayong pataasin ang seguridad ng user sa pamamagitan ng pagpigil sa mga nakakahamak na website sa pag-access ng sensitibong data. Sa esensya, pinapayagan ng CORS ang isang web application na kumuha lamang ng data mula sa mga awtorisadong mapagkukunan, kaya pinipigilan ang hindi awtorisadong pag-access.

Ang pagpapatupad ng mga patakaran ng CORS ay tinutukoy ng mga configuration sa panig ng server. Tinutukoy ng server kung aling mga mapagkukunan ang pinapayagang ma-access sa pamamagitan ng mga header ng HTTP. Sinusuri ng browser ang mga header na ito upang i-verify kung awtorisado ang hiniling na mapagkukunan. Kung ang mapagkukunan ay hindi, bina-block ng browser ang kahilingan at nagpapakita ng mensahe ng error sa JavaScript console. Nagbibigay-daan ito sa mga web application na gumana nang ligtas nang walang anumang pagbabago sa panig ng kliyente.

HTTP Header Paliwanag Halimbawang Halaga
Access-Control-Allow-Origin Tinutukoy ang pinapayagang mga mapagkukunan. https://example.com
Access-Control-Allow-Methods Tinutukoy ang pinapayagang mga pamamaraan ng HTTP. GET, POST, PUT
Access-Control-Allow-Headers Tinutukoy ang mga custom na header na pinapayagan. X-Custom-Header, Uri ng Nilalaman
Access-Control-Allow-Credentials Tinutukoy kung ipapadala ang impormasyon ng pagkakakilanlan (cookies, authorization header). totoo

Ang pag-configure ng mga patakaran ng CORS ay maaaring maging kumplikado kung minsan, at ang mga maling pagsasaayos ay maaaring humantong sa mga kahinaan sa seguridad. Halimbawa, Access-Control-Allow-Origin: * Ang paggamit ng CORS ay nangangahulugan ng pagbibigay ng access sa lahat ng mga mapagkukunan, na maaaring mapanganib sa ilang mga sitwasyon. Samakatuwid, mahalagang i-configure nang mabuti ang mga patakaran ng CORS at payagan lamang ang mga mapagkukunang kinakailangan. Inirerekomenda ng mga eksperto sa seguridad na regular na suriin ang mga configuration ng CORS at pagsasagawa ng pagsubok sa seguridad.

Mga Pagpapatupad ng CORS sa Iba't Ibang Browser

Ang pagpapatupad ng mga patakaran ng CORS ay maaaring bahagyang mag-iba sa pagitan ng mga browser. Gayunpaman, sa pangkalahatan, sinusuportahan ng lahat ng modernong browser ang mga pamantayan ng CORS at gumagana ayon sa parehong mga pangunahing prinsipyo. Sinusuri ng mga browser ang mga header ng HTTP na natanggap mula sa server upang i-verify kung awtorisado ang hiniling na mapagkukunan. Kung ang mapagkukunan ay hindi, hinaharangan ng browser ang kahilingan at nagpapakita ng mensahe ng error sa user.

Nasa ibaba ang ilang halimbawa ng application para sa pag-configure at pagsubok ng mga patakaran ng CORS:

  1. Pagtatakda ng CORS Header sa Server Side: Sa panig ng server, naaangkop Access-Control-Allow-Origin Tukuyin kung aling mga mapagkukunan ang pinapayagang ma-access sa pamamagitan ng pagtatakda ng kanilang mga header.
  2. Pamamahala ng Mga Kahilingan sa Preflight: MGA OPSYON Tiyaking gumagana nang maayos ang mga kumplikadong kahilingan sa CORS sa pamamagitan ng tamang pagtugon sa mga kahilingan sa preflight na ginawa gamit ang .
  3. Pamamahala ng mga Kredensyal: Access-Control-Allow-Credentials Payagan o i-block ang pagpapadala ng personal na nakakapagpakilalang impormasyon gaya ng cookies at authorization header gamit ang header.
  4. Paggamit ng Debugging Tools: I-detect ang mga CORS error gamit ang browser developer tools at ayusin ang iyong configuration nang naaayon.
  5. Pagsasagawa ng Mga Pagsusuri sa Seguridad: Upang subukan ang seguridad ng iyong CORS configuration, regular na magpatakbo ng mga pag-scan sa seguridad at tukuyin ang mga potensyal na kahinaan.
  6. Pagsunod sa Pinakamahuhusay na Kasanayan: Tiyakin ang isang secure at mahusay na configuration sa pamamagitan ng pagsunod sa mga alituntunin ng pinakamahusay na kasanayan sa CORS.

Ang CORS ay isang mahalagang bahagi ng seguridad sa web at, kapag na-configure nang tama, maaaring makabuluhang mapabuti ang seguridad ng mga web application. Gayunpaman, ang mga maling pagsasaayos o pagtanggal ay maaaring humantong sa mga kahinaan sa seguridad. Samakatuwid, ang pag-unawa at wastong pagpapatupad ng mga patakaran ng CORS ay kritikal para sa mga web developer at mga propesyonal sa seguridad.

Ang CORS ay isang mahalagang tool para sa pag-secure ng mga modernong web application. Pinoprotektahan ng maayos na na-configure na mga patakaran ng CORS ang data ng user sa pamamagitan ng pagpigil sa hindi awtorisadong pag-access.

Mga Karaniwang Maling Palagay Tungkol sa CORS

Cross-Origin Resource Ang CORS ay isang madalas na hindi maintindihang paksa sa mga web developer. Ang mga hindi pagkakaunawaan na ito ay maaaring humantong sa mga hindi kinakailangang alalahanin sa seguridad o maling pagsasaayos. Ang pagkakaroon ng malinaw na pag-unawa sa kung ano ang ginagawa at hindi ginagawa ng CORS ay kritikal sa pagtiyak ng seguridad at functionality ng iyong mga web application.

Nakikita ng maraming developer ang CORS bilang isang uri ng firewall. Gayunpaman, ito ay hindi tama. Ang CORS ay isang mekanismo ng seguridad na ipinatupad ng mga browser na nagbibigay-daan sa server na tukuyin ang mga domain na binibigyan nito ng access sa ilang partikular na mapagkukunan. Sa halip na pigilan ang mga malisyosong pag-atake, ang CORS, panig ng kliyente nililimitahan ang pag-access ng mga hindi awtorisadong mapagkukunan.

    Mga Hindi Pagkakaunawaan at Katotohanan

  • Mali: Pinoprotektahan ng CORS ang mga website mula sa lahat ng cross-origin attacks. TOTOO: Pina-throttle lang ng CORS ang mga kahilingang sumusunod sa mga patakarang ipinapatupad ng mga browser at tinukoy ng server.
  • Mali: Ang hindi pagpapagana sa CORS ay ginagawang mas secure ang aking website. TOTOO: Ang hindi pagpapagana sa CORS ay maaaring gawing mas mahina ang iyong website sa mga pag-atake tulad ng cross-site scripting (XSS).
  • Mali: Nalalapat lamang ang CORS sa mga kahilingan sa GET. TOTOO: Nalalapat din ang CORS sa iba pang mga pamamaraan ng HTTP tulad ng PUT, POST, DELETE.
  • Mali: Ang mga error sa CORS ay palaging nagpapahiwatig ng problema sa gilid ng server. TOTOO: Ang mga error sa CORS ay maaaring sanhi ng parehong server-side at client-side na mga configuration.
  • Mali: Hindi naaapektuhan ng CORS ang mga kahilingan mula sa parehong domain. TOTOO: Naglalaro ang CORS kapag may mga pagkakaiba sa protocol (http/https), domain name at port.

Binabalangkas ng talahanayan sa ibaba ang ilang karaniwang sitwasyon ng CORS at ang mga tamang pagsasaayos na gagawin sa mga sitwasyong ito. Tutulungan ka ng talahanayang ito na maunawaan at maipatupad nang tama ang CORS.

Sitwasyon Paliwanag Kinakailangang CORS Header
Simpleng Kahilingan (GET, HEAD) Isang simpleng kahilingan sa GET o HEAD mula sa cross-origin. Access-Control-Allow-Origin: * o isang partikular na domain name
Kahilingan sa Preflight (OPTIONS) Mga kahilingang ginawa gamit ang mga pamamaraan gaya ng PUT o DELETE at naglalaman ng mga espesyal na header. Access-Control-Allow-Origin: *, Access-Control-Allow-Methods: PUT, DELETE, Access-Control-Allow-Headers: Content-Type
Kahilingan na may mga Kredensyal Mga kahilingang naglalaman ng cookies o mga header ng pahintulot. Access-Control-Allow-Origin: isang partikular na domain name, Access-Control-Allow-Credentials: totoo
Payagan ang Anumang Domain Name Payagan ang mga kahilingan mula sa lahat ng domain. Access-Control-Allow-Origin: * (Dapat gamitin nang may pag-iingat dahil maaari itong magdulot ng mga kahinaan sa seguridad)

Ang wastong pag-unawa sa CORS ay susi sa pagpapabuti ng seguridad at functionality ng iyong mga web application. Samakatuwid, mahalagang linawin ang mga maling kuru-kuro tungkol sa CORS at magpatibay ng mabubuting gawi. Tandaan, CORS, isang karagdagang layer ng seguridad Ito ay hindi isang nakapag-iisang solusyon sa seguridad. Dapat itong gamitin kasabay ng iba pang mga hakbang sa seguridad.

Ang Pinakamahalagang Bagay na Kailangan Mong Malaman Tungkol sa CORS

Cross-Origin Resource Ang CORS ay isang kritikal na mekanismo para sa pag-secure ng mga modernong web application. Sa pangkalahatan, kinokontrol nito kapag ang isang web page ay nag-access ng mga mapagkukunan (hal., JavaScript, mga font, mga larawan) mula sa iba't ibang mga domain. Ang mga browser ay nagpapatupad ng parehong pinagmulang patakaran bilang default, na naghihigpit sa pag-access mula sa isang pinagmulan patungo sa isa pa. Nag-aalok ang CORS ng flexibility sa mga developer sa pamamagitan ng ligtas na pagrerelaks sa mga paghihigpit na ito.

Upang maunawaan kung paano gumagana ang CORS, mahalagang suriin ang mga header ng HTTP na tumutukoy kung aling mga pinagmulan ang pinapayagan ng server sa kliyente. Halimbawa, Access-Control-Allow-Origin Tinutukoy ng header kung aling mga pinagmulan ang maaaring ma-access ang mapagkukunan. Kung ang pinagmulan ng kliyente ay tinukoy sa header na ito o isang wildcard (*) ang ginamit, pinahihintulutan ang pag-access. Gayunpaman, ang paggamit ng wildcard na may sensitibong data ay maaaring magdulot ng mga panganib sa seguridad.

Mga Header ng CORS at Ang Kahulugan Nito

Pangalan ng Pamagat Paliwanag Halimbawang Halaga
Access-Control-Allow-Origin Ipinapahiwatig ang mga pinagmulan na maaaring ma-access ang mapagkukunan. https://example.com, *
Access-Control-Allow-Methods Tinutukoy ang pinapayagang mga pamamaraan ng HTTP. GET, POST, PUT
Access-Control-Allow-Headers Tinutukoy ang mga pinapayagang header. Uri ng Nilalaman, Awtorisasyon
Access-Control-Expose-Header Tinutukoy ang mga header na ipapakita sa kliyente. X-Custom-Header

Ang mga error sa CORS ay karaniwang mga isyung nararanasan sa panahon ng pag-unlad. Ang pangunahing sanhi ng mga error na ito ay ang server ay hindi nagpapadala ng tamang CORS header. Karaniwang lumalabas ang mga mensahe ng error sa browser console at tumutulong na matukoy ang pinagmulan ng problema. Upang malutas ang mga error na ito, kinakailangang i-configure nang tama ang bahagi ng server at idagdag ang mga kinakailangang header.

    Mga Bagay na Dapat Isaalang-alang Kapag Gumagamit ng CORS

  1. Tama ang gilid ng server Access-Control-Allow-Origin itakda ang pamagat.
  2. Iwasang gumamit ng mga wildcard (*) kapag nagtatrabaho sa sensitibong data.
  3. Mga pinapayagang pamamaraan ng HTTP (Access-Control-Allow-Methods) malinaw na nakasaad.
  4. Mga pinahihintulutang pamagat (Access-Control-Allow-Headers) i-configure nang tama.
  5. Siguraduhin na ang mga kahilingan sa preflight ay pinangangasiwaan nang tama (kahilingan ng OPTIONS).
  6. Sa kaso ng isang error, suriin ang browser console upang matukoy ang pinagmulan ng problema.
  7. I-bypass ang mga isyu sa pamamagitan ng paggamit ng mga CORS proxy kung kinakailangan.

Mahalagang tandaan na ang CORS ay hindi lamang isang mekanismo ng seguridad; isa rin itong tool na nagpapahusay sa functionality ng mga web application. Kapag na-configure nang tama, ang kakayahang mag-pull at magbahagi ng data mula sa iba't ibang mapagkukunan ay maaaring lumikha ng mas mayaman, mas interactive na mga karanasan sa web. Gayunpaman, napakahalaga na palaging bigyang-priyoridad ang mga hakbang sa seguridad upang mabawasan ang mga potensyal na panganib.

Mga Madalas Itanong

Bakit napakahalaga ng CORS sa seguridad ng mga web application?

Pinipigilan ng CORS ang mga nakakahamak na website na ma-access ang data ng user sa pamamagitan ng pagkontrol kung paano kinukuha ng browser-based na web application ang data mula sa iba't ibang source (domain, protocol, port). Pinoprotektahan nito ang privacy ng user at integridad ng application. Mahalaga, ito ay gumaganap bilang isang firewall.

Paano ang proseso ng pagbuo ng CORS at sa anong mga pangangailangan ito nagmula?

Ang CORS ay lumitaw mula sa isang pangangailangan na lumitaw habang ang mga web application ay lalong nag-access sa mga API. Nagiging masyadong mahigpit ang Same-Origin Policy sa ilang sitwasyon, at kailangan ng mga developer ng mekanismo na magbibigay-daan sa kanila na ligtas na makipagpalitan ng data sa mga domain. Ito ay na-standardize ng W3C at kalaunan ay pinagtibay ng mga web browser.

Anong iba pang alternatibong pamamaraan ang maaaring mas gusto sa halip na gumamit ng CORS at ano ang mga pakinabang ng CORS sa iba?

Ang mga pamamaraan tulad ng JSONP (JSON na may Padding) ay maaaring gamitin bilang alternatibo sa CORS. Gayunpaman, sinusuportahan lamang ng JSONP ang mga kahilingan sa GET at hindi gaanong secure. Sinusuportahan ng CORS ang GET at iba pang mga pamamaraan ng HTTP (POST, PUT, DELETE, atbp.) at nag-aalok ng mas secure na mekanismo. Nagbibigay-daan din ang CORS para sa higit pang fine-tuning sa gilid ng server.

Ano ang mga pinakapangunahing hakbang at bagay na dapat isaalang-alang upang gawing mas maliwanag ang pagsasaayos ng CORS?

Kasama sa mga pangunahing hakbang sa pagsasaayos ng CORS ang pagtatakda ng header na 'Access-Control-Allow-Origin' sa gilid ng server. Tinutukoy ng header na ito kung aling mga domain ang pinapayagang ma-access ang mapagkukunan. Ang pinakamahalagang puntong dapat tandaan ay ang paggamit ng karakter na '*' ay kinokontrol. Kung hindi kinakailangan, dapat na tukuyin ang mga partikular na domain.

Ano nga ba ang isang preflight request (OPTIONS request) at ano ang papel nito sa CORS mechanism?

Ang kahilingan sa preflight ay isang paunang pagsusuri na ginawa ng browser bago ipadala ang aktwal na kahilingan sa server. Ipinadala ito sa pamamagitan ng paraan ng OPTIONS at tinatanong ang server kung pinapayagan ang aktwal na kahilingan (hal., POST). Ginagamit ito bilang isang hakbang sa seguridad, partikular para sa mga kahilingang hindi simpleng kahilingan. Kung tumugon ang server gamit ang naaangkop na mga header ng CORS, ipapadala ang aktwal na kahilingan.

Ano ang mga pinakakaraniwang sanhi ng mga error sa CORS at ano ang mga praktikal na solusyon upang malutas ang mga ito?

Kasama sa mga karaniwang sanhi ng mga error sa CORS ang mga hindi tama o nawawalang mga header ng CORS sa gilid ng server, hindi pagkakatugma ng domain, at mga nabigong kahilingan sa preflight. Kasama sa mga solusyon ang pagsuri sa mga header ng CORS sa gilid ng server, wastong pag-configure ng mga pinapayagang domain, at pagtiyak na matagumpay na nakumpleto ang kahilingan sa preflight.

Anong mga advanced na diskarte at estratehiya ang maaaring ipatupad upang mapabuti ang seguridad ng CORS?

Upang mapataas ang seguridad ng CORS, maaaring magsagawa ng mga karagdagang hakbang sa seguridad tulad ng maingat na paggamit ng header na 'Access-Control-Allow-Credentials', na nagpapakita lamang ng mga kinakailangang header sa panig ng kliyente na may header na 'Access-Control-Expose-Headers', server-side validation ng header na 'Origin', at Subresource Integrity (SRI).

Ano ang mga pinakakaraniwang hindi pagkakaunawaan sa mga developer tungkol sa CORS, at ano ang masasabing makakapag-alis ng mga ito?

Ang karaniwang maling kuru-kuro tungkol sa CORS ay ang halaga ng '*' ay nangangahulugang 'payagan ang lahat' at palaging ligtas. Ito ay hindi tama. Hindi magagamit ang '*' para sa mga kahilingang nangangailangan ng mga kredensyal at nagdadala ng mga potensyal na panganib sa seguridad. Mahalaga para sa mga developer na tukuyin ang mga partikular na domain at ganap na maunawaan kung ano ang ibig sabihin ng header na 'Access-Control-Allow-Credentials'.

Higit pang impormasyon: MDN Web Docs: Cross-Origin Resource Sharing (CORS)

Mag-iwan ng Tugon

I-access ang panel ng customer, kung wala kang membership

© 2020 Ang Hostragons® ay isang UK Based Hosting Provider na may Numero na 14320956.