Reporting Connectie
Doel & introductie
De Reporting Connectie stelt een school in staat om haar eigen reporting- of BI-oplossing (bijvoorbeeld ClickView of Power BI) aan te sluiten op de gegevens uit Eduarte.
In tegenstelling tot de overige Connect-koppelingen is dit geen API, maar een directe (read-only) databaseconnectie. De school maakt met haar reporting-tool verbinding met de Eduarte-database en bevraagt deze met SQL.
De Reporting Connectie is uitsluitend bedoeld voor reporting. Eduarte ontwikkelt deze voorziening verder door om een veilige en betrouwbare reporting-oplossing te kunnen aanbieden. De connectie is uitdrukkelijk niet bedoeld om custom integraties mee te bouwen — gebruik daarvoor de daarvoor bestemde Connect-koppelingen (de EKx-/OKx-API’s).
Wat de Reporting Connectie is (geen API)
- Een Microsoft SQL Server-databaseconnectie met toegang tot het databaseschema van Eduarte.
- Alleen lezen (read-only), via SQL-query’s vanuit de reporting-tool.
- Toegang wordt fijnmazig geregeld via rollen (zie Rollen & toegang), zodat alleen de relevante delen van de database zichtbaar zijn.
Technische connectie
De connectie wordt uitgeleverd met de volgende gegevens:
| Gegeven | Toelichting |
|---|---|
| Server-URL | Het adres van de MSSQL-server |
| Databasenaam | De Eduarte-database |
| Gebruiker & wachtwoord | SQL Server-authenticatie (per reporting-oplossing, zie verderop) |
| Schema | dbo |
De reporting-tool maakt hiermee een standaard
MSSQL-verbinding en voert query’s uit op het
dbo-schema.
Beveiliging
- IP-whitelist — de connectie is alleen bereikbaar vanaf vooraf opgegeven (gewhiteliste) IP-adressen. Geef bij aansluiten het IP-adres van de reporting-oplossing door.
- SQL Server-authenticatie — gebruik sterke wachtwoorden; een reporting-login is geen lid van andere databaserollen.
- Zo klein mogelijke rol — ken alleen de rol(len) toe die nodig zijn (zie Rollen & toegang en AVG & datalek-risico).
- Kolom-afscherming — gevoelige kolommen zijn
met SQL Server
DENYafgeschermd; dit gaat vóór eenGRANTen geldt ook bijSELECT *.
Rollen & toegang
Omdat in principe de hele database uitgelezen zou kunnen worden, biedt Eduarte rollen aan om delen van de database gericht vrij te geven of af te schermen.
| Rol | Strategie | Inhoud |
|---|---|---|
db_eduarte_rep_all |
Blacklist | Alle tabellen behalve de uitgesloten tabellen. Voor brede reporting / datawarehouse-loads. Alleen aan volledig vertrouwde systemen toekennen. |
db_eduarte_rep_krd |
Whitelist | Kernregistratie: personen, deelnemers, verbintenissen, adressen, groepen, medewerkers, organisatie. |
db_eduarte_rep_bpv |
Whitelist | BPV-gegevens en externe organisaties. Additief op
rep_krd. |
db_eduarte_rep_owc |
Whitelist | Onderwijscatalogus: producten, opleidingen, courses,
resultaten en lookups. Additief op rep_krd. |
De whitelist-rollen zijn combineerbaar: een
gebruiker die zowel student- als catalogusgegevens nodig heeft,
krijgt bijvoorbeeld db_eduarte_rep_krd én
db_eduarte_rep_owc.
Altijd afgeschermd. Bepaalde tabellen zijn
nooit toegankelijk (ook niet via rep_all):
OAuth-tokens en -credentials, Connect-integratieconfiguratie
(inclusief secrets), ECK-ID’s en mutatielogs. Daarnaast zijn
gevoelige kolommen afgeschermd, zoals
wachtwoorden/hashes en salts, API-keys, OAuth-secrets en private
keys.
AVG & datalek-risico
Een reporting-connectie heeft in principe toegang tot zeer veel gegevens en kan daarmee een gevaarlijke bron van datalekken worden. Beperk dit risico:
- Ken de kleinst mogelijke rol toe die voor
het doel volstaat (liever de whitelist-rollen dan
rep_all). - Verwerk gegevens volgens dataminimalisatie en de met de school gemaakte afspraken.
- Houd er rekening mee dat gevoelige kolommen bewust zijn afgeschermd en niet bedoeld zijn voor reporting.
Eén connectie per reporting-oplossing
Geef iedere reporting-applicatie een eigen gebruiker/connectie. Dat is een goed principe voor:
- Logging — herleidbaar welke oplossing welke query’s uitvoert.
- Performance — gericht kunnen ingrijpen of beperken per oplossing.
- Beveiliging — per oplossing de juiste (kleinste) rol toekennen en intrekken.
Performance: reporting- versus productiedatabase
De query’s worden bij voorkeur uitgevoerd op de reporting-database. Niet elke school heeft een reporting-database. Is die er niet, dan worden de query’s op de productiedatabase uitgevoerd, wat de performance van Eduarte direct negatief kan beïnvloeden.
Stem daarom zware of frequente query’s af, en overweeg een reporting-database wanneer de belasting toeneemt.
Het databaseschema
- Het schema is
dbo. - Het databaseschema is aan verandering onderhevig. Eduarte geeft geen garantie dat bij een nieuwe versie niets wijzigt. Wijzigingen worden wél vermeld bij de release.
- Voor hulp bij het interpreteren van het databaseschema kun je Eduarte Consultancy betrekken.
Reikwijdte
De Reporting Connectie is bedoeld voor reporting. Eduarte ontwikkelt deze verder door voor een veilige en betrouwbare reporting-oplossing. De connectie is uitdrukkelijk niet bedoeld om custom integraties te maken; gebruik daarvoor de Connect-API’s.
Aansluiten
- Aanvragen — vraag de Reporting Connectie aan via Eduarte (connect@eduarte.nl).
- Rol kiezen — bepaal samen de kleinst passende rol(len).
- IP doorgeven — lever het IP-adres van de reporting-oplossing aan voor de whitelist.
- Connectiegegevens ontvangen — server-URL, databasenaam en een eigen gebruiker/wachtwoord per reporting-oplossing.
- Verbinden — configureer de reporting-tool (ClickView, Power BI, …) met deze gegevens.
Verwijzingen & contact
- Vragen en aanvragen: connect@eduarte.nl
- Hulp bij het databaseschema: Eduarte Consultancy