sql >> Databasteknik >  >> RDS >> Database

"Är det hemligt? Är det säkert?" Hantera känsliga data i din datamodellering

Tidigt i filmen "The Fellowship of the Ring" ställer trollkarlen Gandalf denna fråga till hjälten Frodo:"Är det hemligt? Är det säkert?” Vi kanske inte har en magisk ring att skydda, men vi ställer samma fråga. Men vi pratar om information.

Detta är den andra i en serie med flera delar om hur man tillämpar principer och tekniker för informationssäkerhet som en del av datamodellering. Denna serie använder en enkel datamodell utformad för att hantera icke-kommersiella klubbar som ett exempel på säkerhetsstrategier. I senare artiklar kommer vi att ta upp modellering för finkorniga åtkomstkontroller, revision, autentisering och andra viktiga aspekter av säker databasimplementering.

I den första artikeln i den här serien tillämpade vi några enkla åtkomstkontroller på vår klubbhanterande databas. Uppenbarligen finns det mer än att bara tillhandahålla åtkomstkontroller när du lägger till foton. Låt oss ta en djupdykning i vår datamodell och hitta vad som behöver säkras. Längs vägen kommer vi att upptäcka att vår data har mer information än vad vi hittills har inkluderat i vår modell.

Identifiera klubbens säkra innehåll

I vår första del började vi med en befintlig databas som tillhandahöll en anslagstavlatjänst till privata klubbar. Vi undersökte effekten av att lägga till fotografier eller andra bilder i datamodellen och vi utvecklade en enkel modell för åtkomstkontroll för att ge viss säkerhet för den nya datan. Nu ska vi titta på de andra tabellerna i databasen och bestämma vad för informationssäkerhet för denna applikation.

Känn din data

Vi har en datamodell som inte har något som stödjer någon form av informationssäkerhet. Vi vet att databasen innehåller data, men vi måste undersöka vår förståelse av databasen och dess strukturer för att säkra den.

Nyckelinlärning nr 1:

Granska din befintliga databas innan du tillämpar säkerhetskontroller.




Jag har byggt ut person här med den typiska informationen du skulle ange på vilken webbplats som helst eller ge till en klubb. Du kommer säkert att märka att en del av informationen här kan anses vara känslig. Faktum är att förutom id surrogat primärnyckel, det är allt känslig. Alla dessa fält är kategoriserade som personligt identifierbar information (PII) enligt den definitiva PII-guiden från US National Institute of Standards and Technology (NIST). Faktum är att informationen från denna tabell är nästan tillräcklig för att begå identitetsstöld. Hantera detta fel och du kan bli stämd av människor, stämd av företag, böter av tillsynsmyndigheter eller till och med åtalad. Det är ännu värre om barns data äventyras. Och det här är inte bara i USA; EU och många andra länder har strikta integritetslagar.

Nyckelinlärning nr 2:

Börja alltid en säkerhetsgranskning med tabellerna som beskriver personer.

Naturligtvis finns det mer data i detta schema än bara person . Låt oss betrakta dessa tabell för tabell.

  • graphic_format – Den här tabellen har lite annat än en ögonblicksbild av allmänt kända objekt som JPEG, BMP och liknande. Inget känsligt här.
  • photo_action – Det här bordet är i sig väldigt minimalt. Den har bara en handfull rader, var och en beskriver känsligheten, inte för data, utan för en åtgärd på ett foto. Det här är inte särskilt intressant i sig.
  • photo – Ah, foto. Ordspråket säger att "en bild säger mer än tusen ord". Är det sant ur säkerhetssynpunkt och känslighet? Om du trodde person var riskabelt, bered dig på photo . Ta en titt på vad dessa "tusen ord" kan innehålla:

    • detaljer och villkor för viktig offentlig infrastruktur, byggnader etc.
    • en upphovsrättsskyddad bild
    • metadata som anger exakt tid och GPS-position för fotot
    • metadata som identifierar kameramodell, serienummer och ägare
    • oavsiktlig information som dyra smycken, konst, fordon eller företag
    • ett register eller en skildring av handlingar som är av tvivelaktig juridisk, moralisk eller etisk status
    • textmeddelanden:banala, provocerande, hatiska, godartade
    • en förening med en klubb
    • en koppling till personen som laddade upp bilden
    • pornografi
    • icke-sexuella kroppsdetaljer, som ansiktsdrag, skador, funktionshinder, längd, vikt
    • ansikten av personer som inte samtycker, inkluderade avsiktligt eller oavsiktligt (mer PII)
    • den implicita associeringen av personerna på bilden med varandra och med någon av de tidigare nämnda uppgifterna. Detta kan tyda på anställning, militärtjänst, ägda bilar, storlek eller värde på hus eller fastigheter...

Nyckelinlärning nr. 3:

Fångningar av fysisk data, som i foton, måste granskas för de många typer av information och relationer de kan ha.

  • club – Vissa klubbars namn och beskrivningar kan förmedla mer information än du förväntar dig. Gjorde du verkligen vill annonsera att din klubb träffas hemma hos Martha på Elm Street? Indikerar det politisk aktivitet som andra kan rikta in sig på?
  • club_office – Identifierar innebörden och privilegierna för en klubbledarposition. Användning av eller beskrivning av titlar kan förmedla mycket information om klubben. En del av det kan härledas från en klubbs offentliga beskrivning, andra kan avslöja privata aspekter av klubbens verksamhet.
  • member – Spelar in en persons historia med en klubb.
  • officer – Registrerar en medlems ledarskap historia med en klubb.

Det är klart att det finns föremål här som bör skyddas. Men vems ansvar är det?

Vem äger Dessa data?

Du förvarar den, du äger den! Rätt? Fel. Helt fel. Låt mig illustrera hur fel med ett vanligt exempel:hälsovårdsinformation. Här är ett amerikanskt scenario – hoppas det inte är lika illa någon annanstans! Aldos läkare Dr. B. hittade knölar under armarna och beordrade ett blodprov. Aldo gick till Lab C där sjuksköterskan D. tog blod. Resultaten gick till endokrinolog Dr. E. via sjukhus F, med hjälp av DITT system som drivs av IT-entreprenören DU. Försäkringsgivaren G fick räkningarna.

Så äger du labbinformationen? Förutom att Aldo, hans läkare och hans försäkringsgivare har ett intresse, kan du och vilken som helst av dessa personer bli stämd om de gör något som äventyrar denna konfidentiella information. På så sätt är alla i kedjan ansvariga, så alla ”äger” den. (Är du inte glad att jag använder ett enkelt exempel?)

Nyckelinlärning nr 4:

Även enkla data kan kopplas till en väv av människor och organisationer som du måste hantera.

Låt oss titta på vår klubb igen. Oj! Vad vet vi om de parter som är intresserade av varje huvuddataenhet?

Entitet Party Anteckningar
person den personen
förälder eller annan vårdnadshavare om någon föräldrar eller vårdnadshavare är ansvariga för personen om en minderårig eller om oförmögen
Domstolstjänstemän om personen, under vissa juridiska begränsningar, kan bli föremål för granskning av en tjänsteman eller utsedd av en domstol
club själva klubben
klubbens tjänstemän tjänstemän är ansvariga för att underhålla klubben, dess beskrivning och dess yttre utseende
medlemmar i klubben
club-office själva klubben kontor och titlar är en del av klubbens interna struktur
klubbtjänstemän beroende på vilken typ av befogenheter och ansvar som är förknippade med ett kontor, kommer tjänstemännen att påverkas av vad de gör och hur de gör det
klubbmedlemmar medlemmar kanske vill söka ett klubbkontor eller förstå det, ibland för att hålla en tjänsteman ansvarig
photo uppladdningsperson
ägare (upphovsrättsinnehavare) till fotot fotot kanske inte ägs av personen som laddade upp det!
licenstagare för fotot fotot kan inkluderas under ett licensavtal
personer på bilden om din bild ingår i publicerat material kan det påverka dina intressen på något sätt – kanske på många olika sätt
ägare av mark eller andra föremål på bilden sådana personer kan få sina intressen påverkade av bilderna på ett foto
ägare av textmeddelanden i bilden meddelanden och symboler kan vara föremål för immateriella begränsningar

Känn till relationer Bland dina data

Nej, vi är inte klara än. Ta en titt på datamodellen. Vi har inte undersökt member eller officer . Observera att member och officer har inte ett enda fält som är riktiga data. Allt är en främmande nyckel eller surrogatnyckel, utom datumen som endast tidsboxar varje post. Dessa är rent relationstabeller. Vad kan du härleda från detta?

  • member föreslår en person intressen på grund av club .
  • member kommer att föreslå vilken person känner en annan person s.
  • member säger hur stor club är.
  • member kommer att föreslå liknande eller relaterad club s när en person har flera medlemskap.
  • officer kommer starkt att knyta en person till club .
  • officer kan föreslå tillgång till klubbens pengar, faciliteter eller utrustning av en person .
  • officer kommer att indikera förmågorna hos en person (särskilt ledarskap) när office definition föreslår andra färdigheter. Kassören föreslår till exempel redovisnings- och budgetkunskaper.
  • officer kan indikera relativt strikt kontroll av en club av en liten grupp när varaktigheterna är långa eller när antalet distinkta member s är liten.

Nyckelinlärning nr 5:

Datarelationer kan läcka mycket information om primära dataenheter.

Men låt oss inte glömma vår gamla favorit, photo ...

  • En person i ett photo andra än uppladdaren kan föreslå en club förening som liknar member .
  • Flera person s i ett photo föreslå relationer mellan dem.
  • Aktivitet avbildad i ett photo kan föreslå club aktiviteter eller person på bilden.
  • photo GPS-information kommer att dokumentera närvaron av avbildad person s på en viss plats, liksom bakgrunden till photo .
  • Ett photo kommer vanligtvis att delta i noll eller fler fotoalbum för presentationer etc.

Få hela översikten

Med denna analys av data börjar vi se var vi måste fokusera våra ansträngningar. Vi kan se modellen med viss visuell hjälp:

Med andra ord … nästan hela vår datamodell har visst säkerhetsinnehåll.

Nyckelinlärning nr. 6:

Räkna med majoriteten av ditt schema för att ha säkerhetsinnehåll.

Det är rätt. Praktiskt taget hela. Detta kommer att hända dig hela tiden. Varje tabell som är mer trivial än en enkel uppslagning kan vara inblandad i din övergripande databassäkerhetsstrategi. Detta gör det viktigt för dig att träna ekonomi och omsorg i modellering för att minimera antalet bord du brottar.

Sammanfattningsvis:Lär känna dina data

Att känna till din data är avgörande för att säkra den. Att känna till värdet av din data och dess känslighet kommer att ge dig avgörande vägledning i hur du implementerar en omfattande säkerhetsarkitektur i din databas.

Informationssäkerhet är en omfattande uppgift, och i den här serien tar jag med dig frågor och tekniker som du kan använda stegvis för att förbättra databassäkerheten. I nästa avsnitt kommer jag att visa hur du använder denna information i klubbens databas för att hjälpa dig att identifiera känsligheten och värdet av dina uppgifter. När vi fortsätter i serien kommer vi att förbättra tillvägagångssättet för åtkomstkontroll från den senaste artikeln med mer omfattande och flexibla kontroller. Vi kommer också att se hur datamodellering kan användas för att stödja autentisering och granskning, såväl som multi-tenancy och återställning av databaser.

Jag hoppas att den här artikeln har gett dig verktyg och – lika viktigt – insikter om hur man går tillväga för detta avgörande steg i databassäkerhet. Jag tar gärna emot feedback på denna artikel. Använd rutan för eventuella kommentarer eller kritik.


  1. Vad är Greenplum Database? Introduktion till Big Data-databasen

  2. Schema Switch-A-Roo:Del 2

  3. Använda JSONB i PostgreSQL:Hur man effektivt lagrar och indexerar JSON-data i PostgreSQL

  4. Lagra filer i databas kontra filsystem