# Biztonság a LightInventorynál

> Hol vannak az adatai, milyen Google-hozzáférést kérünk, hogyan működik a bejelentkezés, a szerepkörök és a manipulációt felfedő előzmények, és kik a szolgáltatóink.

Source: https://www.lightinventory.com/hu/biztonsag · Last updated: 2026-10-30

A készletadatai a saját Google-táblázatában maradnak. A LightInventory az Ön nevében olvassa és írja a fájlt, a tartalmáról nem tárol másolatot a szervereinken, és csak azt tárolja, ami a fiókja működtetéséhez szükséges. Ez az oldal pontosan elmagyarázza, hogyan működik mindez, mi ellen védünk, és hol vannak a határok.

> **Note:** A LightInventory fejlesztés alatt áll, és még nem érhető el általánosan. Ez az oldal a rendszert a tervezett formájában írja le. Nem állít auditokat, tanúsítványokat vagy rendelkezésre állási előzményeket, mert ilyenek még nincsenek.

## Hol vannak az adatai?

Az üzleti adatok (tételek, helyek, készletmozgások, árak, megjegyzések, jóváhagyási javaslatok, valamint az előzményekben szereplő előtte/utána értékek) kizárólag az Ön Google-fiókjában lévő táblázatokban vannak. A szervereink a cellaértékeket a memóriába olvassák, hogy oldalakat jelenítsenek meg, módosításokat vessenek össze, exportálásokat készítsenek és beírják a módosításait. Ezeket az értékeket nem mentjük az adatbázisunkba, a naplóinkba vagy a hibajelentéseinkbe. Egy automatizált tesztcsomag ellenőrzi, hogy egyetlen tábla, naplósor vagy hibaesemény sem tartalmaz cellaértéket.

A fiókja működtetéséhez szükséges adatokat tároljuk:

| Mit tárolunk | Miért | Védelem |
|---|---|---|
| Felhasználók, profilok, szervezetek, tagságok, szerepkörök, meghívások (minden meghívótokennek csak a hashe) | Bejelentkezés és csapatkezelés | Az adatbázis-szolgáltató tároláskor titkosítja |
| Bejelentkezési tényezők: jelkulcsok nyilvános kulcsai, TOTP-titkok, hashelt helyreállítási kódok | Többtényezős hitelesítés | A TOTP-titkokat ezenfelül borítéktitkosítással védjük, egy kulcskezelő szolgáltatásban tárolt kulcsokkal |
| Google frissítési token a csatlakoztatott táblázathoz | A fájl olvasása és írása | Borítéktitkosítással védve; soha nem kerül a böngészőbe vagy a naplókba |
| A táblázat metaadatai: fájlazonosító, lapazonosítók, sémaverzió, zárolási mód | A fájl megtalálása és ellenőrzése | Nem tartalmaz cellaértékeket |
| Sorujjlenyomatok (soronként kulcsos hash) | A közvetlenül a táblázatban végzett szerkesztések észlelése | Kulcsosak, így nem fejthetők vissza értékekké |
| Audit-hashlánc: sorszámok, bejegyzés-azonosítók, hashek, a végrehajtó azonosítója, a művelet típusa, időpont | Annak igazolása, hogy az előzmények változatlanok | Nem tartalmaz értékeket |
| Számlázási hivatkozások a fizetési szolgáltatónktól | Előfizetések és számlák | Nem tartalmaz kártyaszámokat |
| Biztonsági események: bejelentkezési kísérletek, jogosultsági hibák, IP-cím, böngésző | Visszaélések észlelése | Az IP-címet 90 nap után eltávolítjuk, az eseményeket 1 év után töröljük |

A saját rendszerünk **Londonban** fut. Az adatbázis (Supabase, `eu-west-2` régió), az alkalmazásszerverek (Vercel, `lhr1` régió), valamint a titkosítási kulcsaink és előzményhorgonyaink (Google Cloud, `europe-west2` régió) mind oda vannak rögzítve. Az egyetlen dokumentált kivétel a tranzakciós e-mail, amelyről az [infrastruktúra és alvállalkozói adatfeldolgozók](#infrastruktúra-és-alvállalkozói-adatfeldolgozók) szakasz szól.

## Milyen Google-hozzáférést kérünk?

A LightInventory két dolgot kér a Google-tól. A Google-fiókkal való bejelentkezéskor az alapvető profilját kéri: `openid`, `email` és `profile`. Amikor csatlakoztat egy táblázatot, külön egyetlen Drive-engedélyt kér: `drive.file`.

Egyszerűen fogalmazva a `drive.file` lehetővé teszi, hogy egy alkalmazás csak azokkal a fájlokkal dolgozzon, amelyeket vele hoz létre, vagy amelyeket kiválaszt számára. A Google úgy írja le, mint hozzáférést azokhoz a fájlokhoz, „that you open with an app or that the user shares with an app while using the Google Picker API” (amelyeket egy alkalmazással nyit meg, vagy amelyeket a felhasználó a Google Picker API használata közben megoszt egy alkalmazással) ([Google Drive API-hatókörök](https://developers.google.com/workspace/drive/api/guides/api-specific-auth?hl=hu)). A Google nem bizalmas hatókörként sorolja be.

Mit jelent ez az Ön számára:

- A LightInventory nem tudja listázni, megnyitni vagy átkeresni a Google Drive-ja többi részét. Az a fájl, amelyet nem a LightInventoryval hozott létre, vagy nem választott ki a Google-fájlválasztóban, láthatatlan számára.
- Soha nem kérjük a tágabb `spreadsheets` hatókört vagy bármilyen, a teljes Drive-ra kiterjedő hatókört.
- Minden engedélyezés után ellenőrizzük, hogy a Google pontosan azt a hozzáférést adta-e vissza, amelyet kértünk.
- A hozzáférést bármikor visszavonhatja a Google-fiókjából. Lásd: [A LightInventory Google-hozzáférésének visszavonása](/hu/sugo/adatok-es-adatvedelem/google-hozzaferes-visszavonasa).

Ezt a hozzáférést csak a táblázatot csatlakoztató személy adja meg, és neki kell a fájl tulajdonosának lennie. A csapattagjait soha nem adjuk hozzá a fájlhoz a Google-ban. Ők az alkalmazáson keresztül dolgoznak, az Ön által adott szerepkörökkel.

## Bejelentkezés és munkamenetek

Minden felhasználó két tényezővel jelentkezik be, minden csomagban, minden munkamenet kezdetén.

1. **Első tényező:** Google-bejelentkezés vagy e-mail-cím és jelszó. A jelszavaknak legalább 12 karakter hosszúnak kell lenniük, és ellenőrizzük őket a kiszivárgott jelszavak listáin. A Google-bejelentkezés csak első tényezőnek számít, soha nem mindkettőnek.
2. **Második tényező:** jelkulcs, amely az alapértelmezett, és ellenáll az adathalászatnak, vagy egy hitelesítő alkalmazás TOTP-kódja. Minden felhasználó legalább két módszert regisztrál, és 10 egyszer használatos helyreállítási kódot kap.

A Tulajdonosoknak és az Adminisztrátoroknak alapértelmezés szerint adathalászatnak ellenálló bejelentkezés kötelező, így ezeknél a szerepköröknél a TOTP ki van kapcsolva, hacsak a tulajdonos meg nem változtatja a beállítást. A hardveres biztonsági kulcsok jelkulcsként működnek. Egy e-mailben küldött hivatkozással vissza lehet állítani a jelszót, de az soha nem helyettesíti a második tényezőt.

A többtényezős hitelesítést két, egymástól független helyen ellenőrizzük: a szerverkódunkban és az adatbázis saját hozzáférési szabályaiban. Az a munkamenet, amely csak az első tényezőn jutott túl, semmit sem tud olvasni, még akkor sem, ha közvetlenül az adatbázist hívja.

| Munkamenet-beállítás | Érték |
|---|---|
| Kijelentkeztetés inaktivitás után | 60 perc |
| A munkamenet maximális hossza | 24 óra |
| Friss második tényező érzékeny műveletekhez | Az elmúlt 5 percen belül |
| Sikertelen második tényezős kísérletek a zárolás előtt | 10, 30 másodperctől 1 óráig terjedő várakozással |

Érzékeny műveletnek számít a szerepkörök módosítása, a számlázás módosítása, egy táblázat csatlakoztatása vagy leválasztása, az exportálás, a tömeges visszavonás, a bejelentkezési módok módosítása és a szervezet törlése. Láthatja az aktív munkameneteit, és bármelyiket befejezheti. E-mailt küldünk, amikor egy új eszköz jelentkezik be, amikor bejelentkezési módot ad hozzá vagy távolít el, és amikor helyreállítási kódokat használnak.

## Szerepkörök, helyek és jóváhagyások

Minden szervezetben öt szerepkör van: Tulajdonos, Adminisztrátor, Jóváhagyó, Szerkesztő és Megtekintő. A Szerkesztők és a Megtekintők adott helyekre korlátozhatók, így egy üzlet csapata csak a saját készletét látja és módosítja.

| Képesség | Tulajdonos | Adminisztrátor | Jóváhagyó | Szerkesztő | Megtekintő |
|---|---|---|---|---|---|
| Tételek, készlet és előzmények megtekintése | Igen | Igen | Igen | Saját helyek | Saját helyek |
| Mozgások rögzítése | Igen | Igen | Igen | Saját helyek | Nem |
| Kérelmek jóváhagyása | Igen | Igen | Igen, a sajátját nem | Nem | Nem |
| Tömeges visszavonás | Igen | Igen | Nem | Nem | Nem |
| Tagok kezelése | Igen | Igen | Nem | Nem | Nem |
| A táblázat csatlakoztatása, a szervezet törlése | Igen | Nem | Nem | Nem | Nem |

A jogosultságokat minden kérésnél élőben olvassuk, így ha valakit eltávolít, vagy módosítja a szerepkörét, az a következő műveleténél érvénybe lép. Minden kérést elutasítunk, hacsak egy szabály nem engedélyezi. Az egyes szerepköröket a [Csapat és szerepkörök](/hu/sugo/csapat-es-szerepkorok) oldal ismerteti.

A jóváhagyások nem kötelezők. Ha be vannak kapcsolva, egy szervezet jóváhagyáshoz kötheti például az árak módosítását vagy a készletkorrekciókat. A javasolt módosítás a táblázata egy védett lapjára kerül, és senki sem hagyhatja jóvá a saját kérelmét. További információ az [auditnapló](/hu/funkciok/auditnaplo) áttekintésében.

## Manipulációt felfedő előzmények

Minden, a LightInventoryn keresztül végzett módosítás előzménybejegyzésként kerül a táblázatában lévő védett `Log` lapra, ugyanabban a Google-frissítésben, mint maga a módosítás. A készletet soha nem számként szerkesztjük. A rendszer egy csak hozzáfűzhető mozgáslistából számítja ki, a visszavonás pedig egy új, ellentétes bejegyzés, nem törlés.

A manipulációt felfedő azt jelenti, hogy ha bárki megváltoztat vagy eltávolít egy korábbi bejegyzést, az ellenőrzés kimutatja. Nem azt jelenti, hogy a módosítás lehetetlen. Így működik:

- **Kulcsos lánc.** Minden bejegyzés kap egy kódot, amelyet a tartalmából és az előző bejegyzés kódjából számítunk ki HMAC-SHA256-tal és egy olyan titkos, a szervezetéhez tartozó kulccsal, amely csak a LightInventorynál van meg. Egyetlen bejegyzés módosítása attól a ponttól kezdve megszakítja a láncot. Mivel a kulcs titkos, egy szerkesztés után senki sem tudja észrevétlenül újraszámítani a kódokat.
- **A lánc másolata, értékek nélkül.** A lánc kódjait (soha nem az Ön értékeit) egy olyan adatbázistáblában tároljuk, amely elutasítja a módosítást és a törlést.
- **Napi horgonyok az adatbázisunkon kívül.** Naponta egyszer minden szervezet legutóbbi láncpozíciójáról egyetlen ujjlenyomat kerül egy Google Cloud Storage-tárolóba, amelyre 7 éves, zárolt megőrzési szabály vonatkozik. A zárolás után ez a szabály nem rövidíthető és nem távolítható el. Egy támadó, aki módosítani tudná az adatbázisunkat, akkor sem tudná átírni ezeket a horgonyokat.
- **Éjszakai ellenőrzés.** Minden éjjel, és amikor a tulajdonos kéri, a `Log` lapból újraszámítjuk a láncot, és összevetjük a másolatunkkal és a legutóbbi horgonnyal. Ha bármi nem egyezik, minden tag integritási figyelmeztetést lát, a Tulajdonos és az Adminisztrátorok pedig e-mailt kapnak.

A határt a tulajdonjog szabja meg. Egy Google-fájl tulajdonosa mindig szerkesztheti, feloldhatja, lemásolhatja vagy törölheti a fájlt; a Google nem teszi lehetővé, hogy bárkit kizárjanak. A lánc ezt nem tudja megakadályozni, de láthatóvá teszi. A Google ráadásul az alkalmazásunk írásait a tulajdonos fiókja alatt rögzíti, mert a tulajdonos engedélyével írunk. A mi `Log` lapunk a tényleges csapattagot rögzíti.

## Közvetlenül a táblázatban végzett szerkesztések

Alapértelmezés szerint a kezelt lapok úgy vannak védve, hogy a Google Táblázatokban csak a tulajdonos szerkeszthesse őket, a fájl szerkesztői pedig nem oszthatják meg tovább. Egy választható szigorú zárolás a Google-ban csak olvashatóvá teszi a fájlt, amíg a tulajdonos szándékosan fel nem oldja.

Mivel a tulajdonos mindig végezhet módosításokat, a LightInventory ezeket is észleli. Valahányszor az alkalmazás beolvassa a táblázatát, minden sort összevet a tárolt ujjlenyomatával. Azoknál a szervezeteknél is fut háttérellenőrzés, amelyeket éppen senki sem néz. Ha egy sor az alkalmazáson kívül változott, az alkalmazás rögzíti, a Google verzióadataiból a lehető legjobb becsléssel megállapítva, ki végezte, majd alkalmazza a szervezete szabályát: letiltja a módosítást, amíg egy Tulajdonos vagy Adminisztrátor el nem fogadja vagy vissza nem állítja, elfogadja és naplózza, vagy jóváhagyásra tartja vissza. A korábbi mozgások vagy előzménybejegyzések szerkesztését mindig megjelöli.

## Titkosítás és titkos adatok

- **Átvitel közben:** minden forgalom HTTPS-en zajlik. A böngészőket arra utasítjuk, hogy csak HTTPS-t használjanak (HSTS előtöltéssel), és az oldalaink szigorú tartalombiztonsági szabályzatot (Content Security Policy) használnak.
- **Tároláskor:** az adatbázisunkat a szolgáltatója titkosítja. A táblázatát a Google tárolja és titkosítja.
- **Tokenek és kulcsok:** a Google frissítési tokeneket, a TOTP-titkokat és az egyes szervezetek előzménykulcsait AES-256-GCM-mel titkosítjuk, rekordonként új kulccsal. Ezt a kulcsot pedig egy londoni Google Cloud KMS-ben lévő főkulcs védi, amely soha nem hagyja el a KMS-t, és évente cserélődik. A KMS egy külön felhőprojektben fut, saját hozzáférés-szabályozással, és a szervereink tárolt, hosszú élettartamú hitelesítő adat nélkül érik el.
- **Az ügyfélszolgálat nem fér hozzá a táblázatához.** Nincs olyan funkció, amellyel a munkatársaink az Ön nevében bejelentkezhetnének, és nincs olyan ügyfélszolgálati eszköz, amely megnyitná a táblázatát. Az éles adatbázisunkhoz való hozzáféréshez két személy szükséges, és naplózzuk.

## Infrastruktúra és alvállalkozói adatfeldolgozók

| Szolgáltató | Szerep | Régió |
|---|---|---|
| Supabase | Adatbázis és hitelesítés (csak rendszeradatok) | London (`eu-west-2`) |
| Vercel | Alkalmazás-tárhely és tűzfal; tartalomkézbesítő hálózat | Függvények Londonban (`lhr1`); globális CDN |
| Google Cloud | Kulcskezelés és előzményhorgonyok (csak rendszeradatok) | London (`europe-west2`) |
| Resend | Tranzakciós e-mail (meghívók, biztonsági és számlázási értesítések) | Egyesült Államok |
| Stripe | Számlázás és fizetések | Nincs régióhoz rögzítve |
| Cloudflare | DNS DNSSEC-kel és a bejelentkezési űrlapok CAPTCHA-ja | Globális hálózat |

A Google Sheets és Drive API-k az Ön saját szolgáltatójaként dolgozzák fel a táblázatát. Az általunk küldött e-mailek soha nem tartalmazzák a készletadatait. Az egyesült államokbeli szolgáltatóknál az adattovábbítást az EU–USA adatvédelmi keretrendszer (Data Privacy Framework) és annak egyesült királysági kiterjesztése, vagy általános adatvédelmi kikötések (standard contractual clauses) fedezik.

Az adatfeldolgozási megállapodásunkat úgy alakítottuk ki, hogy az ügyfelek legalább 30 nappal korábban értesítést kapjanak egy új alvállalkozói adatfeldolgozóról, és jogukban álljon tiltakozni. Az alvállalkozói adatfeldolgozók teljes listáját és a megállapodást az induláskor tesszük közzé.

## Sebezhetőség bejelentése

Ha biztonsági problémát talál, írjon a **support@lightinventory.com** címre a reprodukálás lépéseivel. Kérjük, ne férjen hozzá mások adataihoz, ne zavarja a szolgáltatás működését, és bármilyen aktív tesztelés előtt vegye fel velünk a kapcsolatot, mert a feltételeink nem engedik a biztonsági tesztelést engedély nélkül. A biztonsági kutatóknak szóló elérhetőségeinket géppel olvasható formában is közzétesszük a [security.txt](/.well-known/security.txt) fájlban. A teljes, felelős közzétételre vonatkozó szabályzatot az indulás előtt tesszük közzé.

## Állapot

A LightInventory az indulásra készül. Az indulás előtti terv tartalmaz egy külső behatolásos tesztet, amely kiterjed a bejelentkezésre, a bérlők elkülönítésére, a Google-engedélyezésre, a webhookokra és a táblázatba történő injektálásra, valamint egy teljes önértékelést az OWASP Application Security Verification Standard 5.0 alapján. Ez az oldal akkor egészül ki ezekkel a független értékelésekkel, amikor elkészülnek. Addig a tervezést írja le, nem tanúsítványt.

A teljes listáért lásd: [Mit tárol a LightInventory?](/hu/sugo/adatok-es-adatvedelem/milyen-adatokat-tarolunk), az egyes csomagok tartalmáért pedig az [árakat](/hu/arak).
