Kódreview-gyakorlat · 8 min

Vizsgáljon felül egy AI által generált módosítást

Vizsgáljon meg egy rövid végpontot. Döntse el, milyen bizonyítékra van szüksége a módosítás elfogadása előtt.

A helyzet

Egy AI-asszisztens számlalekérő végpontot javasol. A bejelentkezett felhasználó csak a saját szervezetének számláit láthatja. Ön a kiadás előtt vizsgálja felül a módosítást.

Teendők

  1. Olvassa el a kódot és a közérthető magyarázatát. Nem kell futtatnia.
  2. Jelöljön ki minden, az elfogadáshoz szükséges ellenőrzést. Ellenőrizze a válaszait, olvassa el az indokokat, és hiányzó ellenőrzés esetén próbálja újra.
Szüksége van a háttérre? Olvassa el a leckét

Ön ezt a PR-t vizsgálja felül. A funkció csak a számlával azonos szervezethez tartozó, hitelesített felhasználónak adhatja vissza a számlát. A kódrészlet hiányos.

// 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);
});
Mit csinál a kód?

A végpont számlaazonosítót vesz át a kérésből, lekéri a számlát, naplózza a teljes számlát, majd visszaadja. A részlet nem mutatja meg, ki ellenőrzi a felhasználó jogosultságát ehhez a számlához.

A hitelesítés azt ellenőrzi, ki a felhasználó. Az autorizáció azt, hogy mit tehet. A middleware olyan kód, amely e végpont előtt dolgozza fel a kérést. Tartalmazhat a részletből hiányzó ellenőrzéseket.

Jelölje ki az összes szükséges felülvizsgálati műveletet.

BEFEJEZÉSÜL

A sikeres kérés bizonyítja a számlalekérő végpont biztonságát?

Hasonlítsa össze a válaszát a magyarázattal

Nem. Azt bizonyítja, hogy egy kérés működött. Arra is kell bizonyíték, hogy a felhasználó nem olvashatja más szervezet számláját. Vizsgálja meg a kérés teljes útvonalát, a hiányzó rekord kezelését és a naplózást. A sikeres tesztnek a lényeges követelményt kell lefednie.

Használja a munkájában

A következő PR-review során adjon hozzá egy tesztet olyan műveletre, amelyet el kell utasítani.

Válasszon másik gyakorlatot