sql >> Database teknologi >  >> RDS >> Database

"Er det hemmeligt? Er det sikkert?" Håndtering af følsomme data i din datamodellering

Tidligt i filmen "The Fellowship of the Ring" stiller troldmanden Gandalf helten Frodo dette spørgsmål:"Er det hemmeligt? Er det sikkert?” Vi har måske ikke en magisk ring at beskytte, men vi stiller det samme spørgsmål. Men vi taler om information.

Dette er den anden i en serie med flere dele om, hvordan man anvender informationssikkerhedsprincipper og -teknikker som en del af datamodellering. Denne serie bruger en simpel datamodel designet til at administrere ikke-kommercielle klubber som et eksempel på sikkerhedstilgange. I senere artikler vil vi behandle modellering for finmasket adgangskontrol, revision, autentificering og andre nøgleaspekter af sikker databaseimplementering.

I den første artikel i denne serie anvendte vi nogle enkle adgangskontroller til vores klubstyrende database. Det er klart, at der er mere til det end blot at give adgangskontrol, når du tilføjer billeder. Lad os tage et dybt dyk ned i vores datamodel og finde det, der skal sikres. Undervejs vil vi opdage, at vores data har flere oplysninger, end hvad vi hidtil har inkluderet i vores model.

Identifikation af klubbens sikre indhold

I vores første aflevering startede vi med en eksisterende database, der leverede en opslagstavle til private klubber. Vi undersøgte effekten af ​​at tilføje fotografier eller andre billeder til datamodellen, og vi udviklede en simpel model for adgangskontrol for at give en vis sikkerhed for de nye data. Nu vil vi se på de andre tabeller i databasen og bestemme, hvad der skal være informationssikkerhed for denne applikation.

Kend dine data

Vi har en datamodel, der intet understøtter nogen form for informationssikkerhed. Vi ved, at databasen bærer data, men vi er nødt til at undersøge vores forståelse af databasen og dens strukturer for at sikre den.

Nøglelæring nr. 1:

Gennemse din eksisterende database, før du anvender sikkerhedskontroller.




Jeg har bygget person her med de typiske oplysninger, du vil indtaste på ethvert websted eller give til en klub. Du vil helt sikkert bemærke, at nogle af oplysningerne her kan betragtes som følsomme. Faktisk bortset fra id surrogat primærnøgle, det er alt følsom. Alle disse felter er kategoriseret som personligt identificerbare oplysninger (PII) i henhold til den endelige PII-vejledning fra US National Institute of Standards and Technology (NIST). Faktisk er oplysningerne fra denne tabel næsten tilstrækkelige til at begå identitetstyveri. Håndter dette forkert, og du kan blive sagsøgt af folk, sagsøgt af virksomheder, bøder af regulatorer eller endda retsforfulgt. Det er endnu værre, hvis børns data er kompromitteret. Og dette er ikke kun i USA; EU og mange andre lande har strenge privatlivslove.

Nøglelæring nr. 2:

Start altid en sikkerhedsgennemgang med tabellerne, der beskriver personer.

Selvfølgelig er der flere data i dette skema end blot person . Lad os betragte disse tabel for tabel.

  • graphic_format – Denne tabel har ikke meget andet end et øjebliksbillede af almindeligt kendte elementer som JPEG, BMP og sådan. Intet følsomt her.
  • photo_action – Dette bord er i sig selv meget minimalt. Den har kun en håndfuld rækker, der hver beskriver følsomheden, ikke af dataene, men af ​​en handling på et foto. Dette er ikke særlig interessant i sig selv.
  • photo – Ah, foto. Ordsproget siger, at "et billede siger mere end tusind ord". Er det sandt ud fra et synspunkt om sikkerhed og følsomhed? Hvis du tænkte person var risikabelt, så bered dig på photo . Tag et kig på, hvad disse "tusind ord" kan indeholde:

    • detaljer og betingelser for vigtig offentlig infrastruktur, bygninger osv.
    • et ophavsretligt beskyttet billede
    • metadata, der angiver billedets nøjagtige tid og GPS-placering
    • metadata, der identificerer kameramodel, serienummer og ejer
    • tilfældige oplysninger som f.eks. dyre smykker, kunst, køretøjer eller virksomheder
    • en registrering eller skildring af handlinger, der er af tvivlsom juridisk, moralsk eller etisk status
    • tekstbeskeder:banale, provokerende, hadefulde, godartede
    • en forening med en klub
    • en tilknytning til den person, der uploadede billedet
    • pornografi
    • ikke-seksuelle kropslige detaljer, såsom ansigtstræk, skader, handicap, højde, vægt
    • ansigter af personer, der ikke samtykker, inkluderet bevidst eller tilfældigt (mere PII)
    • den implicitte tilknytning af personerne på billedet til hinanden og med nogen af ​​de tidligere nævnte oplysninger. Dette kan tyde på beskæftigelse, militærtjeneste, biler ejet, størrelse eller værdi af huse eller fast ejendom...

Nøglelæring nr. 3:

Optagelser af fysiske data, som i fotos, skal undersøges for de mange slags informationer og relationer, de kan bære.

  • club - Nogle klubbers navne og beskrivelser kan formidle mere information, end du ville forvente. Gjorde du virkelig vil du annoncere, at din klub mødes i Marthas hus på Elm Street? Indikerer det politisk aktivitet, som andre kan målrette mod?
  • club_office – Identificerer betydningen og privilegierne ved en klublederposition. Brugen af ​​eller beskrivelsen af ​​titler kan formidle en masse information om klubben. Noget af det kunne udledes af en klubs offentlige beskrivelse, andre kan afsløre private aspekter af klubbens drift.
  • member – Registrerer en persons historie med en klub.
  • officer – Registrerer et medlems ledelse historie med en klub.

Det er klart, at der er ting her, der bør beskyttes. Men hvis ansvar er det?

Hvem ejer Disse data?

Du gemmer det, du ejer det! Ret? Forkert. Helt galt. Lad mig illustrere, hvor forkert det er med et almindeligt eksempel:sundhedsinformation. Her er et amerikansk scenarie - håber det ikke er så slemt andre steder! Aldos læge Dr. B. fandt knuder under armene og beordrede en blodprøve. Aldo gik til Lab C, hvor sygeplejerske D. tog blod. Resultaterne gik til endokrinolog Dr. E. via Hospital F, ved hjælp af DIT system drevet af IT-leverandøren DIG. Forsikringsselskab G fik regningerne.

Så ejer du laboratorieoplysningerne? Ud over at Aldo, hans læger og hans forsikringsselskab har en interesse, kan du og enhver af disse mennesker blive sagsøgt, hvis de gør noget, der kompromitterer disse fortrolige oplysninger. På den måde er alle i kæden ansvarlige, så alle "ejer" den. (Er du ikke glad for, at jeg bruger et simpelt eksempel?)

Nøglelæring nr. 4:

Selv simple data kan forbindes til et net af mennesker og organisationer, du skal håndtere.

Lad os se på vores klub igen. Puha! Hvad ved vi om de parter, der er interesserede i hver hoveddataenhed?

Enhed Fest Bemærkninger
person denne person
forælder eller anden værge, hvis nogen forældre eller værger er ansvarlige for personen, hvis en mindreårig eller uarbejdsdygtig
Retsbetjente hvis personen under visse juridiske begrænsninger kan blive genstand for kontrol af en embedsmand eller udpeget af en domstol
club selve klubben
klubbens officerer officererne er ansvarlige for at vedligeholde klubben, dens beskrivelse og dens ydre udseende
medlemmer af klubben
club-office selve klubben kontorer og titler er en del af klubbens interne struktur
klubbetjente afhængigt af typen af ​​beføjelser og ansvar forbundet med et kontor, vil embedsmændene blive påvirket af, hvad de gør, og hvordan de gør det
klubmedlemmer medlemmer vil måske søge et klubkontor eller forstå det, nogle gange for at holde en officer ansvarlig
photo uploader
ejer (ophavsretsindehaver) af billedet billedet er muligvis ikke ejet af den person, der uploadede det!
licenshavere af billedet billedet kan være inkluderet under en licensaftale
personer på billedet hvis dit billede er inkluderet i publiceret materiale, kan det påvirke dine interesser på en eller anden måde – måske på mange forskellige måder
ejere af jord eller andre genstande på billedet sådanne personer kan få deres interesser påvirket af afbildningerne på et billede
ejere af tekstbeskeder på billedet meddelelser og symboler kan være underlagt immaterielle rettigheder

Kend relationerne Blandt dine data

Nej, vi er ikke færdige endnu. Tag et kig på datamodellen. Vi har ikke undersøgt member eller officer . Bemærk, at member og officer ikke har et eneste felt, der er rigtige data. Alt er en fremmed- eller surrogatnøgle, undtagen datoerne, som kun tidsbokser hver post. Disse er rene relationstabeller. Hvad kan du udlede af dette?

  • member vil foreslå en person s interesser på grund af club .
  • member vil foreslå hvilken person kender en anden person s.
  • member siger, hvor stor club er.
  • member vil foreslå lignende eller relateret club s, når en person har flere medlemskaber.
  • officer vil stærkt binde en person til club .
  • officer kan foreslå adgang til klubbens penge, faciliteter eller udstyr af en person .
  • officer vil indikere evnerne hos en person (lederskab i særdeleshed), når office definition foreslår andre færdigheder. Kassereren foreslår f.eks. regnskabs- og budgetfærdigheder.
  • officer kan indikere relativt stram kontrol af en club af en lille gruppe, når varigheden er lang, eller når antallet af distinkte member s er lille.

Nøglelæring nr. 5:

Datarelationer kan lække mange oplysninger om primære dataenheder.

Men lad os ikke glemme vores gamle favorit, photo ...

  • En person i et photo andre end uploaderen kan foreslå en club forening svarende til member .
  • Flere person s på et photo foreslå forhold mellem dem.
  • Aktivitet afbildet på et photo kan foreslå club aktiviteter eller person s på billedet.
  • photo GPS-information vil dokumentere tilstedeværelsen af ​​den afbildede person s på et bestemt sted, ligesom baggrunden for photo .
  • Et photo vil typisk deltage i nul eller flere fotoalbum til præsentationer osv.

Fuld visning

Med denne analyse af dataene begynder vi at se, hvor vi skal fokusere vores indsats. Vi kan se modellen med visuel assistance:

Med andre ord … næsten hele vores datamodel har noget sikkerhedsindhold.

Nøglelæring nr. 6:

Forvent flertallet af dit skema for at have sikkerhedsindhold.

Det er rigtigt. Stort set det hele. Dette vil ske for dig hele tiden. Enhver tabel, der er mere triviel end et simpelt opslag, kan være involveret i din overordnede tilgang til databasesikkerhed. Dette gør det vigtigt for dig at øve økonomi og omhu i modellering for at minimere antallet af borde, du kæmper.

Som konklusion:Kend dine data

At kende dine data er afgørende for at sikre dem. At kende værdien af ​​dine data og deres følsomhed vil give dig afgørende vejledning i, hvordan du implementerer en omfattende sikkerhedsarkitektur i din database.

Informationssikkerhed er en omfattende opgave, og i denne serie bringer jeg problemer og teknikker, som du kan bruge gradvist til at forbedre databasesikkerheden. I den næste del vil jeg vise, hvordan du bruger disse oplysninger i klubbens database til at hjælpe dig med at identificere følsomheden og værdien af ​​dine data. Som vi fortsætter i serien, vil vi forbedre tilgangskontroltilgangen fra den sidste artikel med mere omfattende og fleksible kontroller. Vi vil også se, hvordan datamodellering kan bruges til at understøtte godkendelse og revision samt database-multi-tenancy og gendannelse.

Jeg håber, at denne artikel har givet dig værktøjer og – lige så vigtigt – indsigt om, hvordan man går om dette afgørende skridt i databasesikkerhed. Jeg modtager meget gerne feedback på denne artikel. Brug venligst boksen til kommentarer eller kritik.


  1. Problem ved hentning af poster med tomt array

  2. Hvordan indstilles tidszoneregionen for JDBC-forbindelse og undgår, at SqlException-tidszoneregionen ikke findes?

  3. Den nemmeste metode til at teste en Oracle Stored Procedure

  4. At få id'et for en række, jeg opdaterede i SQL Server