Files
service-finder/docs/V01_gemini/05_AUTH_AND_IDENTITY_SPEC.md

5.2 KiB

🔐 05_AUTH_AND_IDENTITY_SPEC (v1.3)

1. Azonosítási Stratégia

A rendszer alapelve a technikai hozzáférés (User) és a valós identitás (Person) szigorú szétválasztása.

1.1. Identitás szintek

  • User (Login): Email + Jelszó. Kizárólag a belépéshez és a munkamenet (session) kezeléséhez szükséges technikai entitás.
  • Person (Identity): A valós személy adatai (Név, anyja neve, születési adatok, okmányok). Minden Person kap egy globális egyedi azonosítót (UUID).

1.2. Social Auth (Google / Facebook)

  • Működés: Engedélyezett a gyors belépéshez.
  • Kényszerített KYC: Social Auth esetén a 2. lépésben kötelező a KYC adatok pótlása.
  • Korlátozás: Amíg a KYC adatok hiányoznak, a felhasználó "Free User" marad, és nem fér hozzá a regisztrációkor járó extra prémium szolgáltatásokhoz.

1.3. Soft Delete & Re-regisztráció

  • Nincs fizikai törlés: A felhasználó törléskor is_hidden vagy deleted_at flag-et kap.
  • Ismételt regisztráció: Ha az email/név/okmány alapján a rendszer felismeri a visszatérőt:
    • Új technikai User fiók jön létre, de a korábbi Person ID-hoz kapcsolódik.
    • Adat-izoláció: A felhasználó csak az új regisztráció utáni eseményeket látja, a régi adatok (statisztika, elemzés) csak a háttérben maradnak meg.

2. Bizalmi Szintek (Trust Tiers)

A rendszer a "Tier-based Access Control" (szintezett hozzáférés) elvét alkalmazza az adatszolgáltatás mértékétől függően.

Szint Megnevezés Követelmény Jogosultságok
Tier 0 Anonymous Nincs Csak publikus adatok megtekintése.
Tier 1 Verified Email Step 1 (Regisztráció) sikeres Belépés, saját profil megtekintése.
Tier 2 KYC Submitted Step 2 (Személyi adatok + Telefon) Privát Széf/Flotta aktiválása, Wallet használat.
Tier 3 AI/OCR Verified Okmánykép AI általi ellenőrzése Harmadik fél szolgáltatásainak igénybevétele.

3. KYC és Bővített Adattár (Safety)

A persons tábla progresszív feltöltéssel tárolja az adatokat a "Minimal Friction" elv mentén.

3.1. Kötelező Adatkör (Step 2 - Tier 2)

A "Privát Széf" aktiválásához az alábbi adatok megadása kötelező:

  • Alapadatok: last_name, first_name, birth_place, birth_date, mothers_name.
  • Kapcsolat: Valós telefonszám (nemzetközi formátum).
  • Hivatalos okmányok: Személyi ig. szám, Jogosítvány (szám, kategóriák, érvényesség), Lakcímkártya, TAJ, Adóazonosító.
  • Biztonság (ICE): "In Case of Emergency" adatok (értesítendő személy neve és telefonszáma).
  • Vészhelyzeti adatok: Vércsoport, Allergia.

3.2. Jutalom Trigger

A teljes körű adategyeztetésért (100%-os profilkitöltöttség) 2 hét PRÉMIUM tagság jár.


4. Céges Azonosítás és Verifikáció

A szervezetek (Companies) hitelesítése és bizalmi szintjeinek kezelése.

4.1. Verifikációs Státuszok

  • Unverified (Nem ellenőrzött): Kézi rögzítés utáni alapállapot. 30 napos türelmi időt biztosít a funkciókhoz.
  • Verified (Hitelesített): Hitelesített állapot (VIES API találat vagy Admin kézi jóváhagyás után).
  • Suspended (Felfüggesztett): Megszűnt cég vagy le nem igazolt adatok esetén az időszakos ellenőrzés során.

4.2. Ellenőrzési Logika (Robot & Admin)

  1. Robot: A VAT_NUMBER rögzítésekor a rendszer azonnal meghívja az EU-s VIES API-t. Egyezőség esetén azonnal Verified.
  2. Hibrid Validálás: Ha a VIES API nem ad eredményt, a rendszer céges dokumentum feltöltését kéri.
  3. Ellenőrzés: Adminisztrátori jóváhagyás vagy AI-alapú dokumentum-validálás után válik a státusz véglegessé.
  4. Időszakos ellenőrzés: Ütemezett feladat (Cron) 30 naponta újraellenőrzi a cégeket. Megszűnés esetén Suspended státusz és értesítés.

4.3. Korlátozások (Suspended/Unverified)

  • Nem rögzíthető új jármű a flottába.
  • Nem generálható meghívó (Invite Token).
  • Statisztikai kimutatások korlátozása.

5. Jutalék és Gazdasági Rendszer

5.1. Piramis rendszer (3 szint)

A meghívó lánc alapján számolt jóváírások (Referral):

  • 1. szint (Közvetlen): 10%
  • 2. szint: 5%
  • 3. szint: 2% Megjegyzés: A százalékok a befizetés pillanatában érvényes admin beállítások alapján rögzülnek (Snapshot technika).

5.2. Wallets

Minden regisztrációnál automatikusan létrejön:

  • Coin Wallet: Belső fizetőeszköz (Kredit).
  • XP Ledger: Tapasztalati pontok (Gamification és rangsor).

6. Moderáció és Validálás

  • Validált vélemény: Csak igazolt ott-tartózkodás (GPS log) vagy számlafotó (OCR) feltöltése után adható.
  • Fellebbezés: A szervizek kérhetik a vélemények felülvizsgálatát, amit moderátorok bírálnak el.

7. Adattárolási Stratégia (Technikai)

  • A rugalmas okmányadatokat (identity_docs) és a vészhelyzeti kapcsolatokat (ice_contact) JSONB mezőkben tároljuk a persons táblában a kereshetőség és a jövőbeli bővíthetőség érdekében.