Sottodomini maqsuma, żewġ daħliet: min jara liema rekords?
Is-sottodominju jagħżel il-marka, sħubija verifikata tagħżel id-data. Mexxi l-istess kontrolli tal-kerrej kemm jekk it-talba tasal minn indirizz tal-uffiċċju u kemm minn VPN.
Il-Klinika A u l-Klinika B jaqsmu bażi tal-kodiċi waħda, żewġ sottodomini u taħlita ta’ viżitaturi mill-uffiċċju u minn VPN. It-timijiet tan-netwerk għandhom it-tendenza li jikkonfiguraw iż-żewġ daħliet separatament, u dan huwa tajjeb, sakemm l-applikazzjoni ma tagħmilx hekk. Il-kontrolli hawn taħt jappartjenu lill-applikazzjoni u għandhom iġibu ruħhom bl-istess mod irrispettivament minn liema bieb użat it-talba.
L-ewwel: l-isem tal-host isemmi biss kerrej
Irriżolvi l-isem tal-host mitlub kontra mappa li żżomm l-amministratur, u warrab kull ħaġa mhux magħrufa. Uża l-valur tal-host validat mill-framework minflok il-header mhux maħdum, sabiex Host magħmul ma jistax jinjetta muftieħ tat-tiftix. Qbil b’suċċess jgħid lill-kodiċi liema konfigurazzjoni tal-kerrej u liema marka għandhom jitgħabbu. Ma jgħid xejn dwar jekk is-sejjieħ jistax jara d-data ta’ dak il-kerrej. Żomm dik it-tieni domanda f’funzjoni separata b’input separat.
Funzjoni awżiljarja maqsuma li tirritorna kemm il-kuntest kif ukoll il-permess minn tiftixa waħda tal-isem tal-host hija l-bidu tal-bug.
It-tieni: is-sħubija tiġi mis-sessjoni
Fittex is-sħubijiet attivi tal-utent awtentikat u qabbelhom mal-kerrej mill-ewwel kontroll. Utent li jappartjeni għaż-żewġ kliniċi jista’ jaqleb, iżda l-qalba għandha tkun azzjoni espliċita rreġistrata fil-kuntest tat-talba, mhux konklużjoni mill-URL. Utent li jappartjeni għal klinika waħda u jitlob l-oħra jiġi miċħud, inkluż għal downloads u sejħiet API.
Ittestja l-każ negattiv billi tedita identifikatur tar-rekord u parametru tal-kerrej. Jekk waħda miż-żewġ bidliet tirritorna data, l-iskop jinqara mit-talba u mhux mis-sħubija verifikata.
L-iskop tal-cookies u l-login wieħed jiddeċiedu fejn jista’ jiġi ppreżentat kont. Ma jiddeċiedux x’jista’ jaqra dak il-kont.
It-tielet: in-netwerk ma jipprova xejn dwar il-persuna
Gateway VPN jawtentika tunnel, u lista ta’ permessi pubblika tawtentika firxa ta’ indirizzi. L-ebda wieħed minnhom ma jidentifika persuna. NAT jiġbor ħafna utenti f’indirizz sors wieħed, u firxa tal-uffiċċju tagħmel l-istess għal kulħadd fil-bini. Ittratta t-tnejn bħala fatti tat-trasport u żomm l-awtorizzazzjoni fl-applikazzjoni, jew f’integrazzjoni li tiddikjara l-identità b’mod espliċitu u tiġi riveduta bħala tali.
DNS huwa t-tielet fatt tat-trasport. Tweġiba privata teħtieġ rotta privata, u frontend pubbliku jeħtieġ passaġġ tal-oriġini appoġġjat. L-ebda wieħed minnhom ma jġorr permess.
Sentenza waħda għall-ħajt: in-netwerk jiddeċiedi kif tasal talba, u l-applikazzjoni tiddeċiedi x’tista’ taqra.
Ir-raba’: mexxi l-matriċi fuq iż-żewġ daħliet
Uża kontijiet ikkontrollati biex tittestja A f’A, B f’B, A f’B, isem tal-host mhux magħruf u kont awtentikat mingħajr sħubijiet. Ir-raba’ u l-ħames għandhom ifallu magħluqa u qatt ma jaqgħu għal kerrej awtomatiku. Mexxi l-istess matriċi ukoll mid-daħla tal-VPN, b’vażett tas-sessjoni għal kull kont:
curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-b.example.com/records/42
curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-a.example.com/records/42
Imbagħad biddel entrata fil-lista tal-permessi u erġa’ mexxi. Riżultat li jiċċaqlaq ifisser li kontroll tan-netwerk qed jieħu deċiżjoni ta’ awtorizzazzjoni.
Irrepeti l-matriċi wara kull bidla fil-frontend, għax it-tieni passaġġ tal-kodiċi li jaqbeż il-kontroll huwa l-aktar mod komuni li bih din il-fruntiera tiġi eroduta. Ir-riżultat mistenni huwa ta’ dwejjaq: kull daħla tagħti l-istess tweġibiet.