- docs/windows-servere.md: what is collected and how often, how the agent reads servers (WS-Man, DCOM fallback, event log over MS-EVEN6), the exact least-privilege rights and grant-windows-server.ps1 (never local administrator), known limits, "ikke målbar" with the exact reason, firewall ports, the disk forecast, event noise filtering, rules with their thresholds, retention, configuration and API. - docs/syntetiske-tjek.md: the kinds, the AX logon (port, then .NET Business Connector in a separate process, or clearly only the port), service running but not answering, sealed SQL passwords, rules, firewall, configuration and API. - Linked from installation, integration (API table) and databehandling (retention, nothing sent to the hub); on the website in the documentation index, and the rule list shows the Windows server and synthetic check rules in their own areas. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
9 KiB
Databehandling og GDPR
Dette dokument beskriver, hvilke data SQLInsight Pro behandler, hvor de ligger, og hvem der har adgang. Det er grundlag for en databehandleraftale og for kundens egen risikovurdering. Det er ikke juridisk rådgivning. Afsnit markeret [udfyldes af SEOSoft] skal udfyldes, før dokumentet bruges over for kunder.
Kort fortalt
| Udgave | Forlader data kundens netværk? | Rolle |
|---|---|---|
| Community (gratis) | Nej. Agent, repository og webbrugerflade kører hos kunden. | SEOSoft behandler ingen data. |
| Professional / Enterprise med deling til SQLInsight Hub | Ja, fund pr. instans sendes til SEOSofts hub. Slået fra som standard. | Kunden er dataansvarlig, SEOSoft er databehandler (GDPR art. 28). |
Opdateringstjek sender ingen data om kunden. Agenten henter et signeret manifest og filer fra feedet, og feed-serveren ser kun den IP-adresse, der henter. Med et lokalt feed (mappe eller fildrev) kontaktes SEOSoft slet ikke.
Hvad sendes til SQLInsight Hub?
Kun når SQLInsight:Hub:Enabled er true og der er en gyldig licens. Agenten sender hver instans' samlede tilstand (højst hvert 15. minut, og straks ved ændringer):
| Data | Eksempel | Personoplysning? |
|---|---|---|
| Instansens navn, som kunden har valgt i konfigurationen | prod-sql01 |
Normalt nej |
| SQL Server-version, CU-niveau og edition | 15.0.4385.2, Enterprise |
Nej |
| Serverens netværksnavn | Kun hvis SendServerName er slået til |
Normalt nej |
| Hvilke regler der er kørt, og deres resultat | SQLI-CFG-002: Findings |
Nej |
| Fund: regel, alvor, titel, forklaring, anbefaling, emne | database: Sales, job: Nightly ETL |
Normalt nej. Database- og jobnavne kan i sjældne tilfælde indeholde navne. |
| Målinger (evidens) | MAXDOP: 0, Længste ventetid: 412 s |
Nej |
| Følsomme målinger: forespørgselstekst, logins, værts- og programnavne, fejlbeskeder fra jobs | DOMÆNE\jens |
Ja, kan være. Sendes som [udeladt], medmindre kunden slår SendSensitiveEvidence til. |
Der sendes aldrig tabeldata, forespørgselsresultater, adgangskoder eller forbindelsesstrenge.
Dynamics AX (fra 1.3, udvidet i 1.4): fund fra AX-reglerne (COM-AX-… og fra 1.4 SQLI-AX-…: batchjob, nummerserier, RecId, AX-brugere bag blokering) og deres resultater sendes som standard ikke (en ændring fra 1.2, der sendte dem; se opdatering.md); sendes de, er reglernes årsagstekst erstattet af en fast tekst, og AX-brugernavne er følsomme målinger. Kunden kan slå det til for én AX-database ad gangen under Servere og databaser (se servere-og-databaser.md).
Adgangskoder til SQL-logins, der indtastes i webbrugerfladen, gemmes i kundens repository krypteret med agentens offentlige nøgle, så kun agenten kan læse dem. De forlader aldrig kundens netværk.
Supportsager (Professional og Enterprise, se support.md): når en bruger opretter en sag i webbrugerfladen, sendes titel, beskrivelse, kontaktpersonens navn, e-mail og eventuelt telefonnummer samt brugerens Windows-brugernavn til hubben. Det er personoplysninger, som SEOSoft bruger til at besvare sagen. Beskrivelsen indeholder kun det, brugeren selv skriver; følsomme målinger sættes ikke automatisk ind.
Kunden kan se præcis det, der er sendt, under System i webbrugerfladen ("Det sendes til SQLInsight Hub").
Slår kunden SendSensitiveEvidence til, kan fund indeholde personoplysninger (brugernavne, og data i forespørgselstekst som fx WHERE cpr = '…'). Det bør kun ske efter aftale, og det skal fremgå af databehandleraftalen.
Formål
Data i hubben bruges kun til:
-
at yde den support, kunden har købt (Professional: prioriteret mail, Enterprise: telefon)
-
at gøre SEOSofts support opmærksom på kritiske fund hos kunden
-
at se, hvilke problemer der går igen på tværs af kunder, så regler, vejledninger og produkt kan forbedres (aggregeret)
-
at give alle kunder samlet, anonym erfaring tilbage: "hos 4 kunder forsvandt dette fund efter opdatering til CU21" (se nedenfor)
Data sælges ikke og videregives ikke.
Erfaring på tværs af kunder
Hubben registrerer, når en instans skifter build (fra og til version, CU-niveau og tidspunkt). Den ser derefter, hvilke fund der forsvandt kort efter, og hvilke der blev ved. Til agenterne deles kun:
- regel-id, SQL Server-hovedversion, build og CU-niveau
- antal kunder og antal instanser, hvor fundet forsvandt eller blev ved
Der deles aldrig kundenavne, instans- eller servernavne, databasenavne, målinger eller fundets tekster. En sammenhæng deles kun, når fundet er forsvundet hos mindst 3 forskellige kunder (SQLInsight:Hub:Insights:MinCustomers). Oplysningerne kan ikke føres tilbage til en bestemt kunde og er ikke personoplysninger. Det skal alligevel fremgå af databehandleraftalen, at kundens data indgår i denne statistik.
Opbevaring
| Data | Slettes |
|---|---|
| Aktive fund | Når de er løst, og derefter efter 365 dage (medmindre de hører til en åben supportsag) |
| Log over modtagelser (tidspunkt, antal fund; ikke indholdet) | 90 dage |
| Instanser, der ikke har rapporteret | 180 dage, med deres fund og versionshistorik |
| Alt om en kunde | Når aftalen ophører, eller kunden beder om det (delete-customer) |
Fristerne kan ændres i hubbens konfiguration (se hub.md). I kundens eget repository styres opbevaringen af SQLInsight:Retention, for Windows-servere og syntetiske tjek af SQLInsight:Servers og SQLInsight:SyntheticChecks (se windows-servere.md). Fund på Windows-servere og syntetiske tjek sendes ikke til SQLInsight Hub; hændelseslogtekster og fejlbeskeder bliver i kundens repository.
Hvor ligger data?
- Hubben og PostgreSQL-databasen: [udfyldes af SEOSoft: land, datacenter/hostingleverandør]
- Backup: [udfyldes af SEOSoft: hvor, hvor længe, krypteret]
- Underdatabehandlere: [udfyldes af SEOSoft: fx hostingleverandør. Ingen, hvis hubben kører på SEOSofts egne servere]
- Overførsel til tredjelande: [udfyldes af SEOSoft: forventet ingen]
Sikkerhed (tekniske og organisatoriske foranstaltninger)
Indbygget i produktet:
- Kryptering under transport. Agenten sender kun til https-adresser (loopback undtaget), så licensen aldrig sendes i klartekst.
- Autentifikation. Hver kunde har en signeret licens (ECDSA P-256), der verificeres ved hver modtagelse. Spærrede og udløbne licenser afvises.
- Dataminimering. Følsomme målinger udelades som standard, og serverens navn sendes ikke som standard.
- Adskillelse. Data knyttes til kunden ud fra den signerede licens, ikke ud fra noget agenten selv angiver.
- Portalen. Kun navngivne SEOSoft-medarbejdere har adgang. Adgangskoder er PBKDF2-hashede og mindst 12 tegn, login er begrænset til 10 forsøg i minuttet pr. IP, og cookies er HttpOnly, SameSite=Strict og Secure. Der er CSRF-beskyttelse og en streng Content-Security-Policy.
- Opbevaring og sletning, som beskrevet ovenfor.
- Gennemsigtighed. Kunden kan se det sendte indhold i sin egen webbrugerflade.
Mangler (planlagt):
- Log over, hvilke medarbejdere der har set hvilke kunders data
- Tofaktorlogin til portalen (indtil da: kør portalen bag VPN eller en reverse proxy med SSO)
Hos SEOSoft ([udfyldes af SEOSoft]): kryptering af disk og backup, adgangsstyring til serveren, patching, fortrolighedserklæring for medarbejdere, procedure ved brud på persondatasikkerheden (underretning af kunden uden unødig forsinkelse), og hvordan databehandleraftalen følges op.
Hvis kunden ikke ønsker at dele data
Deling er slået fra som standard og er ikke en betingelse for Professional eller Enterprise. Uden deling kan supporten stadig hjælpe ud fra skærmbilleder eller udtræk, som kunden selv sender. Så gælder kundens egne regler for, hvad der deles.
Kundens egen installation
Agent og webbrugerflade gemmer data i kundens eget repository hos kunden. Her er kunden selv ansvarlig. Repositoriet indeholder de samme typer data som ovenfor, inklusive følsomme målinger (forespørgselstekst, logins, deadlock-grafer), fordi de er nødvendige for at løse problemerne lokalt. Til analyse af tidsrum gemmes desuden de tungeste forespørgsler med tekst og forbrug hvert 5. minut i RawDays (standard 14 dage); den tekst bruges kun lokalt og indgår aldrig i det, der sendes til SQLInsight Hub. Adgang til webbrugerfladen styres med Windows-login, og databasebrugeren har kun læserettigheder.
Til rettighedsrevisionen gemmes navne på personer og konti med forhøjede serverrettigheder (også personer i Windows-grupper, slået op i kundens Active Directory af agenten), hvem der har fået eller mistet dem, og hvem der foretog ændringen. Det er personoplysninger. De bliver i kundens repository: ændringsloggen slettes efter ResolvedFindingDays (standard 365 dage), og i fund er navnene følsomme målinger, som sendes til SQLInsight Hub og integrations-API'et som [udeladt]. Fundets titel og emne indeholder ingen navne. Revisionsrapporten (PDF) dannes kun lokalt.