Beveiliging
Wat Cataloom leest, en wat het nooit doet
Deze pagina is bedoeld om door te sturen naar je DBA of security-officer. Hij bevat wat zij moeten weten om ja of nee te kunnen zeggen, zonder dat ze eerst het hele product moeten begrijpen.
Rechten
db_datareaderop de database. Dat is de hele eis voor de basisanalyse.VIEW DATABASE STATEals je ook indexgebruik en plancache-kosten wilt. Zonder dat recht slaat Cataloom die checks over en zegt in het rapport welke en waarom.- Er is geen schrijfpad in de code. Geen INSERT, geen UPDATE, geen DDL, ook niet als je het zou willen.
Wat er gelezen wordt
- De systeemcatalogus: objecten, kolommen, sleutels, foreign keys, triggers, dependencies.
- De definities van views, procedures en functies. Dat is de kern: de logica zelf.
- Geen rijdata. Voorbeeldwaarden staan standaard uit en zijn een expliciete opt-in.
- Bij de bevestiging van niet-deterministische updates draaien er telqueries. Die tellen rijen en geven geen inhoud terug.
Wat er naar een AI gaat
- Schema-informatie en procedure-definities, naar de Azure OpenAI-resource van de klant, met de sleutel van de klant.
- Er gaat geen rijdata naar het model.
- Draai je met de AI uit, dan werken alle elf auditchecks nog. Je krijgt dan geen lopende beschrijvingen, wel alle bevindingen.
- Relaties en lineage worden sowieso deterministisch uit de code gemined en niet door een model bedacht.
Zonder databaseverbinding
cataloom-collect.ps1draait bij jou, doet alleen SELECT's op de systeemcatalogus, en schrijft een zip.- Het script is leesbaar en bedoeld om gelezen te worden. Er zit geen obfuscatie in en geen netwerkverkeer.
- De volledige analyse draait daarna op die zip, zonder ooit met je database te praten.
Wat er achterblijft
- Niets. Geen agent, geen service, geen geplande taak, geen tabel in je database.
- De output is een map HTML-bestanden zonder externe requests: geen CDN, geen tracking, fonts ingebed.
- Open het rapport met je netwerkkabel eruit en het werkt nog steeds.
Blijft er een vraag over die hier niet beantwoord wordt, stel hem dan voordat er iets draait. Dat is een stuk makkelijker dan achteraf.