Biztonság

Veszély

Ez a modul veszélyes lehet, ha nincs gondosan konfigurálva.

Egy LLM, amely a Odoo-hez kapcsolódik, attól függően, hogy mit engedélyez:

  • Exfiltrate data külső modellszolgáltatóhoz (a promptok, az eszköz eredményei, a mellékletek és a beszélgetési előzmények elhagyják a szervert).

  • Read any business data az eljáró felhasználó (vagy ügynökfelhasználó) már tud olvasni az Odoo ACL-ek alatt – és alapértelmezés szerint az AI hozzáférési házirend engedélyezi az olvasást, hacsak nem húzza meg.

  • Rekordok létrehozása, módosítása vagy törlése, ha az Írás / Törlés képességek és a hozzáférési szabályok engedik — beleértve a felügyelet nélküli ügynök-futtatásokat is (javaslat felügyelői jóváhagyása után, vagy azonnal, ha a feladat Write Mode értéke hybrid / auto), illetve azonnal a chat Automatikus alkalmazás írási módjában.

  • Call business actions (életciklus-módszerek), ha a Művelet képesség és az engedélyezési lista lehetővé teszi.

  • Reach the public web or MCP eszközök, amely nem megbízható tartalmat importálhat a modellkörnyezetbe (prompt injekció), vagy adatokat küldhet kimenően.

  • Modify UI and schema, ha a Testreszabás engedélyezve van egy rendszergazdánál.

Minden mesterséges intelligencia-jogosultságot úgy kezeljen, mint az adott körhöz tartozó termelési root hozzáférést: kezdje szűken, mérje meg, majd csak azt nyissa meg, amire egy konkrét használati esetnek szüksége van.

Fenyegetésmodell (mi mehet rosszul)

Adatok a cégen kívülre

A szolgáltatónak elküldött minden csevegési kör és eszköz eredménye a szolgáltató feltételei és joghatósága szerint kerül feldolgozásra. Érzékeny személyes adatok, fizetések, jelszavak (ha szabad szövegben), szerződési feltételek és ügyféltitkok jelenhetnek meg:

  • a felhasználói üzenetek és beszélgetések előzményei;

  • L4 rögzíti a pillanatképeket, amikor egy űrlapról cseveg;

  • eszköz kimenetek (search / read / read_group eredmények);

  • feltöltött fájlok és letöltött weboldalak;

  • ügynök futtatási lépései és teljes hasznos terhelésű naplók (ha a naplózás teljes hasznos terhelésre van állítva).

Enyhítések: válasszon olyan szolgáltatót és régiót, amelyet szerződésben elfogad; éles környezetben hagyja az AI napló szint értékét Csak metaadat beállításon, kivéve ha éppen incidenst vizsgál; tagadja meg az érzékeny modelleket és mezőket az AI hozzáférési szabályokban; ne engedélyezze a webet vagy az MCP-t olyan ügynököknél, amelyek bizalmas jegyeket kezelnek; tanítsa meg a felhasználókat, hogy ne illesszenek be titkokat a chatbe.

Túljogosított interaktív chat

Ha egy kiemelten kiváltságos alkalmazott írási/törlési/műveleti funkcióval és írási móddal használja az asszisztenst, az Automatikus alkalmazás módban, egyetlen hibás modellfordulat (vagy egy beillesztett e-mailben megjelenő felszólítás) azonnal megváltoztathatja a termelési adatokat.

Mitigations: írási mód megtartása hibrid vagy megerősítés esetén; hagyja ki a Törlést; korlátozza az írást a megbízható csoportokra a Csoportokra korlátozva képességen keresztül; mező/modell megtagadási szabályok bérszámfejtésre, bankokra, adó- és rendszermodellekre.

Túljogosított autonóm ügynök

Egy res.users-hez kapcsolt ügynök that user’s Odoo csoporttal fut. Ha csoportok eltávolítása nélkül másolja a „Belső felhasználói” alapértelmezett értékeket, az ügynök teljes jogú alkalmazott lesz. Az agent_full csatorna hatókörével és széles közönségével kombinálva bármely engedélyezési listán szereplő kérelmező elindíthat munkát az ügynök teljes képességosztályainál.

Mitigations: dedikált felhasználó létrehozása csak a szükséges csoportokkal; soha ne kapcsolja össze a Beállítások / AI-rendszergazda; állítson be egy emberi felügyelőt; alapértelmezés szerint használja a intersect hatókört; az üres csatornaközönség senkit jelent; a nyilvános ügynökök írási képességének kikapcsolása; felügyelőként mindig ellenőrizze újra az ajánlatokat.

Prompt-injekció és social engineering

Az ügyfelektől származó szövegek, e-mailek, csevegés és feltöltött PDF-ek work material, nem jogok biztosítása. A támadók továbbra is megpróbálják:

  • rendszerutasítások felülírása („korábbi szabályok figyelmen kívül hagyása…”);

  • kényszerítse a modellt olyan eszközök meghívására, amelyeket nem kellene;

  • iteráció az elutasítások után (adaptív támadások).

Enyhítések (beépített): blokkolt bemeneti minták; a kapunál érvényesített képességkorlátok; AI-házirend + Odoo ACL-ek; figyelmeztetések → szabálysértés esetén ideiglenes kitiltás, hogy a támadók ne próbálkozhassanak szabadon tovább; triázs réteg, amely csak elvonhat jogosultságot. Vegye figyelembe, mire terjed ki a triázs: a bejövő megszólításra. Egy állandó utasítás ütemezett vagy Futtatás most futása csak akkor kerül triázsra, ha a feladaton be van jelölve a Triázs indításkor beállítás (lásd: Utasítás ellenőrzése futás előtt). Ezek egyike sem teszi „megoldottá” az injekciót — csak a hatását csökkentik. Úgy tervezze meg az ügynököket, hogy a legsúlyosabb sikeres injekció se olvashasson vagy írhasson többet, mint amennyire az ügynököt szánták.

Életciklus / state megkerülés

A state mező közvetlen beírása kihagyhatja az olyan gombokat, mint a Megerősítés / Közzététel. A kapu elutasítja az életciklust jelző ``state`` mező közvetlen írását. Ehelyett használja az engedélyezett üzleti műveleteket (call_action), ha a Művelet képesség engedélyezve van.

Hard-deny padló (önvédelem)

Egy fix technikai modellkészlet mindig tiltott az AI eszközök előtt, a hozzáférési szabályoktól függetlenül. Az adminok nem „nyithatják meg” ezeket ai.access.rule-lal. A padló tartalmazza:

  • biztonsági szempontból érzékeny rendszermodellek (hozzáférési jogok, szabályok, csoportok, felhasználók és API-kulcsok, konfigurációs paraméterek, szekvenciák, menük, nézetek, szerverműveletek, cronok, levélsor, fizetési tokenek, partnerek bankszámlái, …);

  • az AI alkalmazás minden saját modellje (ai és minden ai.* név) — az ügynökök nem konfigurálhatják újra a szabályzatot, skilleket, banokat vagy saját futtatásaikat eszközökkel;

  • nyers mail.message és discuss.channel (szerzőség / bizonyítékintegritás — a legitim chatter a tulajdonos rekord message_post hívásán megy keresztül, nem generikus create eszközökön).

Ez egy padló, nem teljes adatosztályozási szabályzat — az üzleti modellek, mint a hr.employee vagy az account.move, nincsenek alapból hard-deny alatt; szükség esetén Önnek kell konfigurálnia őket.

Az ir.attachment és a mail.activity közvetlenül a padlón kívül helyezkedik el, egy szűk, csak kifejezett engedéllyel nyitható halmazban: egyetlen globális alapértelmezés sem nyitja meg őket, egy hozzáférési szabály viszont igen, és a modul mindkettőhöz szállít egyet — a csatolmányok olvashatók és írhatók, a tevékenységek olvashatók, írhatók és létrehozhatók —, így a dokumentum- és a bejövőszámla-skillek el tudnak olvasni egy PDF-et, az ügynökök pedig saját nevükben hagyhatnak ellenőrző Teendőt. A csatolmányok létrehozása és törlése, valamint a tevékenységek törlése zárva marad, mert egyik modell sem esik át a globális alapértelmezésekre. Ezt a két szabályt valódi jogosultságként olvassa, ne a padló részeként: az ügynök bármelyik olvasható rekordon nyithat tevékenységet, és átcsatolhat egy fájlt egy másik rekordra. Szűkítse vagy kapcsolja ki őket, ha ez több annál, mint amennyire a telepítésnek szüksége van.

Modellek közötti mellékhatások

Egy mező olyan modellbe is írhat, amelyet Ön soha nem nyitott meg: a crm.lead.email_from a partner e-mail-címét frissíti. A kapu elutasítja az ilyen mezőket, és a kétféle átnyúlás nem egyformán állítható be. Ahol az átnyúlás statikus — related mező —, ott az elutasítás feltétlen, és egyetlen hozzáférési szabály sem oldja fel. Ahol dinamikus — a mező inverse függvényt hordoz —, ott csak a pontosan azt a mezőt megnevező szabály oldja fel, így egy modellszintű engedély nem szivároghat oldalirányban, és az auditnyom sem jelenthet csendben kevesebbet annál, amit egy írás valójában érintett. A fájllekérési útvonalon (fetch_file_to_field) a mezőnkénti engedélyezés egyáltalán nem érvényes: az inverse-t hordozó célmezőt bármilyen szabályt is ír, a rendszer elutasítja, mert a tartalom a modell által választott URL-ről érkezik.

Tíz mező szintű írási engedély érkezik bekapcsolva azokon az adatbázisokon, ahol a Könyvelés telepítve van, a számlázási folyamat érdekében. Ezek közül négy az account.move.line modellen van, és a beágyazott one2many útvonalon a mező szintű Engedélyezés a modellszint előtt dől el, ezért ez a négy sormező a Számlasorok mezőn keresztül írható akkor is, ha egyetlen szabály sem engedélyezi magának az account.move.line modellnek az írását. Tekintse át őket, mielőtt lezártnak minősíti a számlasorokat. A négy közül az egyik, az analytic_distribution, külön figyelmet igényel: ez JSON mező, ezért a rá vonatkozó szabály a modellek közötti védőkorlát mellett a JSON típusú értékek elutasítását is feloldja, az inverze pedig egy lekönyvelt sor analitikus tételeit írja újra — törli és újra létrehozza az account.analytic.line rekordokat egy olyan modellen, amelyet egyetlen szabály sem nevezett meg. Lásd: Modellek közötti írás elleni védelem.

Érzékeny mezők szűrése

Azokat a mezőket, amelyek neve titkoknak (jelszó, token, api_key, …), varázsmezőknek és bizonyos összetett típusoknak tűnik, íráskor megfosztjuk vagy megtagadjuk. Ez a mélyreható védekezés, nem helyettesíti a teljes modellek (pl. HR) tagadását.

Megerősítés és újraellenőrzés

A függőben lévő írásokat apply időpontban újra érvényesítjük a megfelelő cselekvő identitás és az aktuális szabályzat szerint. Egy régi javaslat jóváhagyása a jogok visszavonása után sikertelen lesz. Az ügynökjavaslatok az run-ből építik újra a jogosultságot, nem pedig a megerősítő jogosultságaiból (a megerősítő engedélyezi; az ügynök hajtja végre).

A futás életben léte is része ennek a felhatalmazásnak. Ha egy futást kérésre leállítottak, vagy az elakadt futásokat begyűjtő művelet zárta le, mert a kiszolgálófolyamata megszakadt, az általa tett javaslatot alkalmazáskor a rendszer elutasítja, és senki nem hagyhatja jóvá: a begyűjtő nem tudja megkülönböztetni a halott kiszolgálófolyamatot a lassútól, ezért egy olyan futás írásait, amelyet valaki más lezártnak jelentett ki, soha nem lehet újrajátszani. Azok a javaslatok, amelyeket egy magától befejeződött futás hagyott hátra — Kész, Sikertelen vagy Időtúllépés —, a háttértakarítás általi lejáratásukig jóváhagyhatók maradnak.

Biztonsági szerepkörök és csoportok

Csoport

Cél

AI: Felhasználó

Csevegés, saját beszélgetések, saját írási javaslatok, memória használata; a felügyelőknek erre van szükségük az ügynöki javaslatok jóváhagyásához.

AI: Adminisztrátor

Konfigurálja az ügynököket, képességeket, házirendeket, készségeket, MCP, figyelést. AI: Felhasználó.

Beállítások (rendszeradminisztráció)

AI Beállítások alkalmazás oldala, irányított beállítás, beállítási tervek.

Fontos

Az ügynökfelhasználók soha nem használhatják a beállításokat vagy az AI-rendszergazdát. A modul blokkolja az ilyen felhasználók összekapcsolását az ügynök űrlapon (írási időben). Ne adja meg ezeket a csoportokat később sem a felhasználói űrlapon – ez megkerüli az ügynök megkötését, és eltávolítja a tiltó tiltó kapcsolót az AI-rendszergazdák számára.

Rétegezett kontrollok (ellenőrzőlista)

Az összes réteg használata; egyik sem helyettesíti a többit:

  1. Odoo groups on the user / agent user — mire képesek mesterséges intelligencia nélkül.

  2. AI capabilities — mely eszközosztályok léteznek (kérdezés, olvasás, írás, törlés, web, mcp, művelet, testreszabás, beállítás, navigáció).

  3. AI access groups + rules – modell/mező engedélyezése·megtagadása az AI-eszközökhöz.

  4. Az ügynök ``capability_ids`` mezője – további felső határ csak az adott ügynök számára.

  5. Channel rules + audience + scope_mode — ki indíthatja el az ügynököt, és hogy a képességosztályok metszik-e a kérelmezőt.

  6. Írási mód / függő írások / felügyelő — ember a hurokban. A chat a globális Beállítások módot használja; minden ügynök-feladatnak saját módja van (alap: confirm). Lásd Feladat írási mód (csak ügynök-futtatások).

  7. Sebességkorláts, strikes, bans, blocked patterns — visszaélés és ismétlődés.

  8. Naplózás and retention — bizonyíték és a legkevesebb megőrzés a lépésnaplókhoz.

Amit a biztonság nem garantál

  • Tökéletes ellenállás az azonnali injekcióval szemben.

  • Minden érzékeny üzleti terület besorolása a dobozból.

  • Az edzésadatok kitalálása nem jelenhet meg szabad szövegű válaszokban (az alapszabályok csökkentik, de nem szüntetik meg a hallucinációkat – a kritikus cselekvéseknek eszközökön és megerősítésen kell keresztülmenniük).

  • GDPR/jogszabályi megfelelés önmagában – továbbra is szükség van a jogalapra, a szolgáltatókkal kötött adatvédelmi hatóságokra és a megőrzött beszélgetésekre vonatkozó adatmegőrzési szabályzatra.

Csak akkor folytassa a Első lépések-vel, ha ezt az oldalt megértették a modult adminisztráló személyek.