Predpomnite klasifikacijo VPN in ohranite njeno starost vidno
Opazovanje, njegova svežina in odziv vašega spletnega mesta se starajo z različno hitrostjo. Če jih držite ločeno, predpomnjenja klasifikacija ostane poštena glede tega, kar ve.
Predpomnjenja klasifikacija prihrani eno poizvedbo in zamrzne včerajšnje mnenje v današnjo odločitev. Prava primerjava ni predpomnilnik proti njegovi odsotnosti: je opazovanje, njegova svežina in odziv, ki ga je izbralo vaše spletno mesto. Če izgubite mejo med temi tremi, začne optimizacija sama voditi politiko. Popravek je knjigovodstvo, ne boljši tok.
Trije zapisi s tremi različnimi urami
Opazovanje je polje, ki ste ga prejeli, tok, iz katerega je prišlo, in različica nabora podatkov za njim. Svežina je lastnost vnosa v predpomnilniku: kdaj je poizvedba tekla, kdaj se vnosu preneha zaupati in ali je zadnje osveževanje kaj vrnilo. Odziv je tisto, kar vaše spletno mesto glede tega stori za to zahtevo, ta račun ali to dejanje. Ustvarjajo jih različni lastniki in propadajo z različno hitrostjo, zato ena vrstica z imenom blocked uniči to razlikovanje.
| Record | Who owns it | How long it should live | Damage when it is folded into another row |
|---|---|---|---|
| The observation | the feed's operator | until a newer dataset version replaces it | a stale lookup becomes indistinguishable from a fresh one |
| Its freshness | the application | one request's tolerance for age | a failed refresh hides behind a cache hit |
| The response | whoever owns the site policy | until that policy is reviewed | a feed outage turns into an indefinite block |
Dve uri si zaslužita posebno pozornost. Trenutek, ko je tekla vaša poizvedba, ni trenutek, ko je ponudnik objavil nabor podatkov, in operater, ki vrstico bere pozneje, mora vedeti, iz katere od obeh izhaja vsaka vrednost. Nastavite potek in osveževanje po dokumentiranem modelu posodabljanja toka in po ceni napake, nikoli po številu, izposojenem z drugega spletnega mesta.
Ohranite polje, ne razsodbe
Dokumentacija MaxMind o anonimnih naslovih IP je en konkreten primer toka, ki anonimni VPN, ponudnika gostovanja, javni posrednik in izhod Tor loči v ločena polja. Dokumentira tudi, da se neregistrirana podmreža VPN lahko namesto tega pojavi pod zastavico gostovanja. Če to sploščite v en boolean, zavržete edini del, ki bi ga operater lahko pozneje revidiral.
Nobena smer sklepanja ni varna. Oznaka gostovanja ne dokazuje, da je bil uporabljen tunel, in odsotnost zastavice VPN ne dokazuje, da med odjemalcem in vašo storitvijo ni bilo ničesar. To sta dve različni trditvi in en sam boolean ne more izraziti nobene od njiju.
Vnos povežite z naslovom, ki ste ga preverili
Za obratnim posrednikom mora aplikacija uporabljati obravnavo odjemalskega naslova, ki jo je odobrila namestitev. Glave za posredovanje, ki jo zagotovi klicatelj, nikoli ne sme biti mogoče izbrati tuje predpomnjene reputacije.
Ta napaka je hkrati napaka pravilnosti in varnosti, ker lahko napadalec, ki nadzoruje glavo, podeduje zaupanja vreden vnos ali pripne žrtev na slabega. Ključ izpeljite iz povezave, ki jo je končala vaša lastna infrastruktura, in zabeležite, katera izpeljava je bila uporabljena. Ko je spredaj več posrednikov, dokumentirajte verigo, namesto da zaupate prvi verjetno videti glavi. Če je veriga dvoumna, zabeležite izpeljani ključ in glavo, ki ste jo zavrnili, ker bo pregled incidenta vprašal prav po drugi.
Brez dokazov ni čist rezultat
Časovna omejitev, popačen odziv in nedosegljiva baza podatkov pomenijo vsak nekaj drugega kot uspešna poizvedba, ki se ni ujemala z ničimer. Predstavite jih kot ločene izide in vnaprej odločite, kaj zaščiteno dejanje stori, ko dokazov sploh ni. Stran samo za branje in dejanje v prijavljenem računu lahko tam razumno sledita drugačnim pravilom.
Ohranjanje običajnega preverjanja ali zahteva za podprto preverjanje je običajno boljši odgovor kot obravnavati izpad kot splošno dovoljenje ali kot prepoved za celotno spletno mesto. Omejite, kako dolgo lahko poizvedba teče, in ustavite nevihte osveževanja z mehanizmom, ki ga podpira integracija. Ko se med izpadom uporabi zastarela vrednost, jo na točki odločitve označite kot zastarelo in naredite zadnjo napako osveževanja vidno, da dolgotrajna okvara ne more iti za zdravo vnos. Kakršna koli je izbira, zapišite jo tam, kjer se politika izvaja, ne v komentarju ob poizvedbi.
Hramba spada k isti odločitvi: hranite polja, ki jih ta funkcija potrebuje, in revizijsko sled za njimi, nič več. Predpomnilnik IP ne postane zgodovina brskanja.
Sprejmite štiri primere, vključno s popravkom
Preizkusite svež rezultat, potekel rezultat, neuspešno poizvedbo in pozneje popravljeno klasifikacijo. Vsak vadi drugo vejo in samo zadnji pokaže, ali je napačno omejitev mogoče razveljaviti.
Nato potrdite, da ima običajen uporabnik pot do zahteve za pregled po napačni blokadi, ker bo tok včasih napačen in čakalna vrsta je del zasnove. Štiri primere zapišite v runbook ob ime lastnika politike. Zasnova si prisluži svoje mesto, ko odstrani odvečne poizvedbe, ohrani negotovost in odločitev ostane vidno v rokah človeka.