Vaja pregleda kode · 8 min
Preglejte spremembo, ustvarjeno z AI
Preglejte kratko izvedbo končne točke. Določite dokazila, ki jih potrebujete pred sprejetjem spremembe.
Situacija
Pomočnik AI predlaga končno točko za račune. Prijavljeni uporabnik sme videti samo račune svoje organizacije. Spremembo pregledujete pred izdajo.
Kaj narediti
- Preberite kodo in njeno preprosto pojasnilo. Ni je treba zagnati.
- Izberite vsa preverjanja, potrebna pred sprejetjem. Preverite odgovore, preberite razloge in poskusite znova, če preverjanje manjka.
Pregledujete ta PR. Funkcionalnost mora vrniti račun samo uporabniku s preverjeno istovetnostjo iz iste organizacije. Izsek je nepopoln.
// Fictional, incomplete example. Do not deploy.
app.get('/invoices/:id', async (req, res) => {
const invoice = await db.invoice.findUnique({
where: { id: req.params.id }
});
console.log('Invoice response', invoice);
return res.json(invoice);
});Kaj naredi koda?
Končna točka vzame identifikator računa iz zahtevka, pridobi ta račun, ga v celoti zabeleži in vrne. Izsek ne pokaže, kdo preveri uporabnikovo pravico do tega računa.
Preverjanje istovetnosti preveri, kdo je uporabnik. Avtorizacija preveri, kaj uporabnik sme narediti. Vmesna programska oprema obdela zahtevek pred to končno točko. Vsebuje lahko preverjanja, ki jih ta izsek ne pokaže.
ZA ZAKLJUČEK
Ali uspešna zahteva dokazuje varnost končne točke za račune?
Primerjajte odgovor z razlago
Ne. Dokazuje, da je ena zahteva delovala. Potrebujete tudi dokazila, da uporabnik ne more prebrati računa druge organizacije. Preglejte celotno pot zahteve, delovanje ob manjkajočem zapisu in beleženje. Uspešen test mora pokrivati pomembno zahtevo.
Uporabite pri delu
Pri naslednjem pregledu PR-ja dodajte en test za dejanje, ki mora biti zavrnjeno.
Izberite drugo vajo