Teadmised
AI toimingu auditeerimine: autoriseerimine, tulemus ja kontrollitud olek
Kasulik auditijälg ei vasta ainult küsimusele „mida mudel ütles?”. See vastab kelle poolt toiming nõuti, mida süsteem autoriseeris, millist tööriista kasutati, mis juhtus sihtsüsteemis ja milline olek jäi pärast operatsiooni.
See eristamine on oluline. Täielik prompt ja vastus võivad aidata silumiseks, kuid need ei asenda operatiivset kirjet. Samuti võivad need sisaldada andmeid, mida ei tohiks kunagi logisüsteemi kopeerida.
Alusta intsidenti rekonstrueeriva küsimusega
Oletame, et agent muutis kampaania eelarvet või kasutaja õigusi kaks nädalat tagasi. Täna keegi küsib:
- kes algatas muudatuse;
- kas operaator oli volitatud seda nõudma;
- kuidas operatsioon klassifitseeriti;
- kas nõudis see inimkinnitust;
- kes täpselt mis kinnitas;
- millised asjakohased parameetrid tööriistale edastati;
- mida väline teenusepakkuja tagastas;
- kas saadud olek verifitseeriti;
- milline turvapoliitika versioon rakendati.
Kui nendele küsimustele vastamiseks tuleb käsitsi kombineerida vestlusajalugu, HTTP‑logid, andmebaas ja teenusepakkuja konsool, siis meil on logid. Meil ei ole siiski korralikku auditijälge.
Minimaalne operatsiooni kirje agendile
Iga süsteem on erinev. Tööriistu kasutavate agentide puhul on kasulik tuum järgmine:
| Väli | Miks seda salvestada |
|---|---|
event_id |
sündmuse unikaalne identifikaator |
timestamp |
järjestus ja ajastus |
operator_id |
isik või põhimõte, kes toimingu nõudis |
agent_id / agent_version |
kasutatud agendi/mudeli tuvastus |
task_id / correlation_id |
mitme kõne ühendamine ühe töövoogu |
tool |
kasutatud tööriist või meetod |
operation_class |
lugemine / kirjutamine / opereerimine / destruktiivne või kohalik ekvivalent |
target_resource |
konto, tenant, projekt või mõjutatud ressurss |
authorization_decision |
lubatud / keelatud koos kasutatud ulatuste/poliitikaga |
approval_id |
kinnituse tõendus, kui nõutud |
request_fingerprint |
normaliseeritud parameetrite sõrmejälg, kui täielik andmestik pole vajalik |
provider_result |
kontrollitud tulemus ilma saladusteta |
resulting_state |
muutuse järel loetud olek või tõendusviide |
policy_version |
täideviimise ajal rakendatud reeglistik |
Ei ole vaja kõiki väärtusi salvestada tekstina samas kirjes – mõned võivad viidata eraldi tõendusartefaktidele. Oluline on, et ahel oleks koherentne ja taastatav.
Vestluslogid ja auditijäljed lahendavad erinevaid probleeme
Vestluslog pakub konteksti
See näitab, mida kasutaja küsis, mida mudel vastas ja milline info sessioonis oli.
Auditijälg pakub täideviimise tõendeid
See peaks näitama:
operaator
→ autoriseerimisotsus
→ tööriist
→ toimingu materjalid
→ kinnitus (kui nõutud)
→ teenusepakkuja tulemus
→ tulemuse olek
Kui mudel kirjutab “kampaania on peatatud”, kuid tööriista sündmust ega sihtsüsteemi loetud olekut pole, siis on meil väide, mitte täideviimise tõendus.
Mis tavaliselt kuulub redigeerimis- või välistusnimekirja
Rohkem logimist ei tähenda automaatselt paremat auditivõimet. See võib suurendada andmelekkega seotud pindala.
Meie sisemises Brillnet Ads MCP‑s on auditikirjetest välja jäetud volituste, autoriseerimispealkirjade ja toor isiklike tunnuste andmed. Sama suund on kasulik ka mujal.
Ära logi saladusi
- API‑võtmed;
- juurdepääsu‑ või värskendustokenid;
- privaatvõtmed;
- paroolid;
- seansiküpsised;
- täielikud
Authorization‑pealkirjad.
Kui auditikirje peab näitama, millist identiteeti või volituste komplekti kasutati, salvesta turvaline viitenumber, mitte saladus ise.
Ära kopeeri automaatselt iga päringu ja vastuse sisu
Toores API‑vastus võib sisaldada isikuandmeid, konfidentsiaalseid välju või infot, mis auditimise eesmärgi jaoks pole asjakohane. Vali metaandmed, mis on vajalikud otsuse ja tulemuse oleku jaoks.
Ära tee täispromptidest kohustuslikku osa auditikirjest
Promptid võivad olla diagnostikas kasulikud, kuid need võivad sisaldada kliendi dokumente, isikuandmeid või kogemata sisestatud saladusi. Promptide säilitamine peaks järgima eraldi andmete säilitamise ja juurdepääsu poliitikat, mitte eeldust „AI tähendab logi kõike”.
Redigeeri enne püsivaks muutmist
Kui salvestame kõigepealt täieliku koormuse ja maskime alles hiljem, on saladus juba jõudnud logisüsteemi.
Ohutum töövoog on:
tööriist tagastab tulemuse
↓
normaliseerimine
↓
väljade klassifikatsioon
↓
redigeerimine / pseudonümiseerimine
↓
auditikirje püsivaks muutmine
Tundlikud andmed võivad jääda lähte‑süsteemi, millel on oma juurdepääsu‑ ja säilitamiskontrollid. Auditisüsteem peaks säilitama minimaalse vajaliku, et otsust ja mõju taastada.
Write‑after‑read sulgeb “kutsuti” ja “muudetud” vahele jääva lünki
Kirjutamistoimingute puhul salvestame mitte ainult kõne tulemuse, vaid – kui teenusepakkuja seda võimaldab – ka sihtressursi oleku lugemise pärast muudatust.
Näide:
14:02:11 kirjutamise päring: kampaania staatus → PAUSED
14:02:12 teenusepakkuja: edu
14:02:13 read‑after‑write: campaign.status = PAUSED
See võimaldab eristada:
- agent nõudis muudatust;
- teenusepakkuja nõustus päringuga;
- ressurss oli kontrollimisel oodatud olekus.
See ei tõesta, et olek ei muutunud mõne sekundi pärast. See on siiski palju tugevam tõendus kui mudeli sõnum „valmis”.
Kinnituse peab olema eraldi auditisündmus
Inimese kinnitus peaks omama oma identifikaatorit ja siduma konkreetse toimingu.
Kontseptuaalne kirje võib sisaldada:
approval_id: apr_...
approved_by: operator_...
approved_at: 2026-09-12T14:01:44+02:00
action_hash: sha256(...)
operation: ENABLE_CAMPAIGN
target: campaign_...
expires_at: ...
Täideviija saab seejärel kontrollida, et konkreetse operatsiooni selle versiooni jaoks on olemas kinnitus, mitte usaldada vestlusõnumeid „kasutaja nõustus”.
Loe: Millal peaks AI‑agent nõudma inimese kinnitust?
Terviklikkus: lisamise‑ainult kirjed ja hash‑ahelad
Meie sisemises Ads MCP‑tööriistas on auditikirjed lisamise‑ainult ja hash‑ahelatud. Eesmärk on muuta vaikimisi ajaloo muutmise tuvastamine lihtsamaks.
Kontseptuaalselt:
record_1 + hash(record_1)
↓
record_2 sisaldab hash(record_1)
↓
record_3 sisaldab hash(record_2)
Kui vanemat kirjet muudetakse, ei sobi järgnevad lingid enam.
See ei ole maagiline muutumatuse garantii. Administraator, kellel on piisavalt laialdased õigused, võib logisüsteemi või kogu salvestuse hävitada. Kirjete terviklikkus peab seega olema kombineeritud:
- piiratud logi‑juurdepääsuga;
- määratletud säilitamisega;
- varukoopia/ekspordi kasutamisega, kui see on põhjendatud;
- lünkade või ahela rikete monitoorimisega;
- kontrollitud ajastuse ja identifikaatoritega.
Kasulik telemeetria MCP‑tööriistadele
tools/call‑i või ekvivalentse lokaalse operatsiooni puhul on kasulikud väljad tihti:
- tööriista nimi;
- riskikategooria;
- normaliseeritud ressursi identifikaatorid;
- hinnatud ulatused;
- autoriseerimise tulemus;
- kas toimingu eelvaade näidati;
- kinnituse identifikaator;
- algus‑ ja lõpp‑aeg;
- teenusepakkuja staatus;
- kontrollitud veakood;
- kas toimus korduskatse;
- idempotentsusvõti või turvaline sõrmejälg sellest;
- kirjutamise järel loetud olek;
- mudeli/agendi identifikaator diagnostika vajadusel.
See ei nõua iga toor‑tööriista argumendi salvestamist.
Mis saab mõttelõngast (chain‑of‑thought)?
Me ei vaja mudeli sisemist mõttelõnga, et luua kasulik operatiivne auditijälg. Vajame vaadeldavaid fakte:
- otsuse jaoks asjakohane sisend;
- valitud operatsioon;
- rakendatud poliitika;
- kinnitus;
- tulemus;
- tulemuse olek.
Kui põhjendus on vajalik, võib agent kirjutada lühikese selge decision_reason‑i, mis on mõeldud ülevaatuseks. See erineb mudeli varjatud põhjendusprotsessi säilitamisest.
Säilitamine: „igavesti” on tavaliselt halb vaikimisi väärtus
Iga sündmuse klassi jaoks määra:
- töötlemise eesmärk;
- säilitamisperiood;
- kes sellele ligi pääseb;
- kas andmeid võib koondada või pseudonümiseerida;
- millal on kirje ärilise tõendusmaterjali ja millal inseneri telemeetria vaheline piir;
- kuidas seaduslik/käivitav kustutamine toimib, kui see on nõutav.
Ära hoia silumis‑telemeetriat ja formaalseid otsusekirjeid koos lõpmatuseni ilma põhjenduseta.
Näide intsidenti rekonstrueerimisest
Olukord: kampaania hakkas kulutama, kuigi see pidi olema peatatud.
Kasulik auditijälg peaks võimaldama jälgida:
task_id– kust päring tuli;operator_id– kes selle algatas;tool– milline tööriist valiti;operation_class=operate– miks rakendati täiendav kontroll;approval_id– kas keegi tegelikult kinnitas aktiveerimise;- parameetrid – millist staatus ja eelarve kinnitus hõlmas;
- teenusepakkuja tulemus – mida Google Ads aktsepteeris;
- read‑after‑write – milline olek täidetud oli pärast käivitust;
- hilisemad sündmused – kas mõni teine osapool muutis staatusse uuesti.
Ilma selle ahelita jääb meil ainult vestlusajalugu ja oletused.
AI‑agendi auditijälje kontrollnimekiri
- Igal olulisel sündmusel on unikaalne ID ja ajatemperatuur.
- Operaatori ja agendi identiteet on eraldi.
- Mitmed kõned saab ühendada ühe task/correlation ID‑ga.
- Autoriseerimisotsused on salvestatud, mitte ainult edukad kõned.
- Kinnitus on eraldi kontrollitav sündmus.
- Tulemuse jaoks olulised parameetrid on salvestatud või sõrmejäljestatud.
- Saladused ja autoriseerimispealkirjad eemaldatakse enne püsivaks muutmist.
- Isikuandmed on minimeeritud/redigeeritud.
- Kordused ja idempotentsus on jälgitavad.
- Kirjutamiste puhul on teenusepakkuja tulemus ja, kui võimalik, read‑after‑write tõendus.
- Poliitika versioon on taastatav.
- Auditile juurdepääs on rangem kui tavalisel rakenduse juurdepääsul.
- Säilitamine on määratletud, mitte juhuslik.
- Jälgitakse jälje terviklikkust.
Kellele see juhend on mõeldud
Protsessi omanikud ja arendajad vajavad täideviimise tõendeid. Näited tegevustest hõlmavad tootmise kvaliteeditikettide muutmist, kinnisvaraomanike teavituste saatmist ja IT‑juurdepääsu haldamist. Need on kujundusstsenaariumid, mitte olemasolevate juurutuste väited; protsess määrab vajaliku tõendusmaterjali.
Ads MCP on sisemine kujundusnäide Brillneti‑omanikele, mitte klienditeeninduse või sõltumatu tootmise hindamise näide.
Tundmatu tulemus peab jääma nähtavalt tundmatuks
Ajalõpp ei tõesta ebaõnnestumist: server võis kirjutamise lõpule viia enne vastuse kaotamist. Erineeri requested, accepted, verified ja unknown. Ära raporteeri ebakindlust kui edu.
Integreerimise omanik määrab rekonsiliatsiooni teenusepakkuja töö‑ID või ressursiviite põhjal. Kaasa operaator enne lahendamata kõrge‑mõjuga toimingute kordamist. Lisa seotud rekonsiliatsioonisündmus, mitte kirjuta ajalugu ümber.
Viivitusega kirjutamise nähtavus vajab sama hoolt. Vana olek võib peegeldada teenusepakkuja konsistentsimudelit. Salvesta vaatlusaja ja piirangu teave. Korduskatsetel peab olema lõplik piir ja lõplik staatus, mida inimesed mõistavad.
Otsusta, mis juhtub, kui auditijälje edastamine ebaõnnestub
Logimine võib kaotada ühenduvuse, täita kettaruumi või keelduda kirje vastuvõtmisest. OWASP soovitab tõrkeid testida. Eraldi otsusta, millised järgnevad tegevused võivad jätkuda viivitusega edastamise ajal ja millised vajavad esmalt kindlat otsustõendit.
See ei nõua kogu ettevõtte peatamist ühe puuduva diagnostikateate tõttu. Eralda tavapärane telemeetria ja kinnitatud toimingu tõendusmaterjal. Õiguste muutmine võib nõuda kindlat autoriseerimistõendit enne täideviimist; avaliku käsiraamatu lugemine võib lubada piiratud metaandmete puhverdamist. Need on näidisdisainide otsused, mitte universaalsed OWASP‑nõuded.
Puhver peab omama mahupiiranguid, juurdepääsukontrolle ja viivituse monitoorimist. Säilita algsed identifikaatorid ja sündmuse ajad taastamise ajal. Jälgi puuduvaid sündmusi, et eristada tegevusetust kadunud nähtavusest. Saada hoiatus isikule, kes suudab salvestuse taastada või peatada mõjutatud toiminguklassi.
Sõrmejälg ei eemalda privaatsusriski automaatselt
E-posti aadressi hash‑imine võib siiski isikut tuvastada, võrreldes lühikese teadaolevate aadresside nimekirjaga. Kui operaatori identifitseerimine on oluline, kaalu juhuslikku sisemist identifikaatorit ja eraldi kaitstud kaardistust. Auditilugejatel ei ole automaatselt vaja seda kaardistust.
request_fingerprint‑il peab olema määratletud normaliseerimismeetod ja skeemi versioon. Hash on ebapiisav, kui keegi ei saa kindlaks teha, mida see hõlmas. Määra turvaline tõenduskoht, kuid väldi kogu dokumendi säilitamist ainult selle hash‑i arvutamiseks. Protsessi omanik määrab tõendusvajadused; andmekaitse vastutav isik vaatleb säilitatavaid andmeid.
Rekonstrueeri üks sündmus ilma agendita
Kasuta fiktiivset teenusetiketti. Operaator kinnitab teate saatmist kindlale tarnijale. Agent valib tööriista, lüüs kontrollib ulatust ja server salvestab tulemuse ning sõnumi ID. Teisel käivitusel muudetakse saaja pärast kinnitust. Täideviimine peaks olema tagasi lükatud koos salvestatud põhjusega. Kasuta testandmeid, mitte reaalseid kliendi dokumente.
Anna sõltumatule ülevaatajale tõenduspakett. Ta peaks tuvastama operaatori, kinnitatud sisu, saaja, rakendatud poliitika ja tegeliku mõju. Kui ta peab agendilt küsima, mida see kavatses, on pakett puudulik. Paranda puuduv seos, mitte automaatselt kogu vestluse salvestamist.
Protsessi omanik vastutab vastuvõtu eest. Arendaja pakub eksportid ja kontrollitud vead. Logihaldur kontrollib juurdepääsu ja paketi terviklikkust. Väikeettevõte võib ühe inimesele määrata mitu rolli, kuid rollid vajavad siiski selgeid omanikuid.
Mida teha homme
Vali üks oluline toiming ja tuvastada iga süsteemi, mis seda salvestab. Lisa ühine korrelatsiooni‑identifikaator. Loetle säilitatavad väljad ja välistatud väljad. Käivita üks lubatud ja üks keelatud katse testandmetega, seejärel rekonstrueeri mõlemad eksportist.
Mõõda olulisi toiminguid täielike jälgedega, lahendamata tulemusi ja viivitust tegevuse ja tõendusmaterjali kättesaamise vahel. Sea protsessi läve. Logimaht ei tõesta kasutatavust: üks puuduva sammu korral on vaja uurimist.
Tehnilised soovitused ei määra õiguslikku säilitust
NIST SP 800‑92 käsitleb logihaldust. AU‑kontrolli perekond NIST SP 800‑53‑s aitab korraldada auditinõudeid; ükski dokument ei anna sertifikaati ega määra ühtset säilitamisperioodi kõigile ettevõtetele. OWASP ei ole seadusandlus. Määra õiguslikud ja lepingulised kohustused eraldi, koos nende kohaldamisala ja alusega. See juhend ei sätesta seaduslikku andmesäilituse perioodi.
Piir
Auditijälg ei tõesta automaatselt otsuse õigsust. See tõendab, mida süsteem registreeris toimingu autoriseerimise ja täideviimise kohta. Reguleeritud protsessid võivad nõuda täiendavaid nõudeid terviklikkuse, säilitamise, privaatsuse ja tõendusmaterjali kvaliteedi osas.
Vaata ka Least privilege for AI agents ja Brillnet Security.
Sünteetiline finantsoperatsiooni proov
Kasutage väljamõeldud arvega spetsiaalset demonstratsioonikeskkonda. Pakutud agenditoiming muudab arve sisemise ülevaatuse olekut; see ei liiguta raha. Andke operaatorile ja agendile erinevad identiteedid, piirake kirje ulatust ja nõudke, et asjakohane isik volitaks toimingut. Salvestage poliitika versioon ja otsus ilma mandaate või täielikku konfidentsiaalset ärakirja salvestamata.
Pärast lubatud toimingut lugege arve olekut ja asjakohast muudatuste ajalugu. Võrrelge neid soovitud tulemusega. Tehniline vastus, mis ütleb, et on aktsepteeritud, ei tõenda, et kavandatud muudatus toimus. Säilitage päringu identifikaator, tulemus ja viide kontrollitud olekule, et teine isik saaks jada rekonstrueerida.
Seejärel proovige demonstratsioonipoliitikaga välistatud toimingut. Kontrollige keeldumist ja veenduge, et vastav olek ei muutunud. See näitab väljamõeldud seadistuse konkreetset piiri. See ei tõenda, et igal agendi tööriistal, finantssüsteemil või kliendikeskkonnal on sama kontroll.
Kasutage Pulsari kontrollinõude, omaniku, tegevuse ja tõendite salvestamiseks. 14-päevane prooviversioon testib vastavust töövoogu. See ei sisalda täielikku agendi toimimise auditi platvormi, pangaühendust ega makse autoriseerimisteenust. Tõeline integratsioon või piloot vajab eraldi kokkulepitud ulatust. Enne prooviperioodi alustamist vaadake üle prooviperioodi nõutav makseviis, valitud plaan ja tühistamistingimused.
Allikad
Tehnilised allikad toetavad esitatud põhimõtteid. Juurutussstsenaariumid ja tegevuskava on autori kujundussoovitused.
- OWASP AI Agent Security Cheat Sheet — accessed: 2026-10-02.
- OWASP MCP08:2025 — Lack of Audit and Telemetry — accessed: 2026-10-02. Allikad kontrollitud: 2026-10-10.
- OWASP — Logging Cheat Sheet — Kasulikud sündmuste kirjed ja välistatud tundlik teave.
- NIST SP 800-92 — Log Management — Palkide haldamine.
- NIST SP 800-53 Rev. 5 — Juurdepääsu kontroll ja auditi-kontrolli põhimõtted.
- MCP — security best practices — Integratsiooni turvalisuse ja autoriseerimise piirid.
- Pulsar GRC — actual scope — Nõuded, kontrollid, tõendid ja prooviperiood.
- Avaldatud tootevaliku ja prooviperioodi tingimused — Avaldatud tootevaliku ja prooviperioodi tingimused.
Vaadake tingimused üle ja alustage 14-päevast prooviperioodi
Väikseim privileeg AI agentidele mitme rentnikuga SaaS-is
Toidu tootmise CAPA: leiust tõhususe ülevaateni
Farmaatsia SOP muudetud: kontrollige koolitust ja lähteversiooni
