Database
 sql >> Datenbank >  >> RDS >> Database

Sicherheitsansätze in der Datenmodellierung. Teil 4

Dies ist der vierte in unserer mehrteiligen Serie über Datenmodellierung für Informationssicherheit sowie Dateneigenschaften. Ein einfaches Datenmodell für eine fiktive Website, die Organisationen mit gemeinsamen Interessen (Vogelbeobachtungsvereine usw.) unterstützt, hat uns mit Inhalten versorgt, um die Datenmodellierung aus Sicherheitssicht zu untersuchen.

In Oscar Wildes Stück Lady Windermeres Fächer , Lord Darlington bezeichnet einen Zyniker als „jemanden, der von allem den Preis kennt und von nichts den Wert“. Leider können die Informationen in unseren Datenbanken unbewusst auf die gleiche Weise behandelt werden. Ist ein Kundenkonto die Summe seiner Einkäufe wert? Was leiden wir, wenn wir während der Weihnachtseinkaufssaison vier Stunden Marketingdaten verlieren?

Wir Datenmodellierer werden diese Bewertungen nicht vornehmen, aber wir müssen ihre relevanten Daten im Namen der Personen speichern, die dies tun. Wir müssen die Lücken der impliziten Datenstruktur füllen. In diesem Artikel erfahren Sie, wie Sie dieses wichtige Sicherheitselement zu unserer Datenbank hinzufügen.

Zeig mir das Geld!

Wie viel sollten wir jedes Datenobjekt schützen? Betrachten Sie sie im Lichte der Vertraulichkeit , Integrität und Verfügbarkeit — die Schlüsselqualitäten, die die Sicherheit eines Informationssystems bestimmen. Wir müssen auch den Unterschied zwischen diesen Maßnahmen auf einer „intrinsischen“ Basis berücksichtigen und wie sehr diese Daten die Sicherheit beeinträchtigen können.

Dafür gibt es zwei Gründe. Erstens hilft es uns zu sehen, wie wir die Daten in unserer Clubdatenbank schützen können. Sollen einige Tabellen verschlüsselt werden? Andere Schemas einfügen? Vielleicht werden wir nachgelagert Virtual Private Database-Steuerelemente anhängen? Diese Informationen helfen uns bei der Auswahl geeigneter Schutzmaßnahmen.

Zweitens werden wir die Daten aus einer rohen Buchhaltungsperspektive betrachten:Was ist ihr Gesamtwert? Was könnten wir im Falle einer Datenkorruption verlieren? Was ist unsere Haftung, wenn personenbezogene Daten offengelegt werden? Wenn wir diese Informationen zu unserem Schema hinzufügen, fügen wir unseren gespeicherten Daten eine wichtige Metrik hinzu:Dollar und Cent. Auf diese Weise können die Leute, die die Rechnungen bezahlen, bestimmen, was sie sich für Sicherheit leisten können ––– und in monetärer Hinsicht, wie viel es wert ist.

Alle Beziehungen sind ausgeschrieben

Fassen wir den Zustand unseres Modells zusammen. Seit dem letzten Artikel ist die Datenstruktur ausgefüllt. Personen, Vereine, Mitgliedschaften, Fotos, Alben und Inhalte sind alle vorhanden. Wie sie zusammenbinden, ist da. Dieses Schema ist bereit, Daten mit explizit erfassten Beziehungen zu speichern, während implizite Beziehungen so weit wie möglich eliminiert wurden.



Zuschreibung von Wert und Sensibilität

Jetzt werden wir herausfinden, wie man Zahlen in Daten einfügt. Wir können wirklich keine Single anhängen Wert zu einem Datenelement, das uns sagt, wie viel es zu schützen ist. Wir können – und müssen – aber auch nicht auf eine Sammlung von Metriken eingehen. Wir konzentrieren uns darauf, wie viel uns ein Datenelement einbringen kann und wie viel uns der Verlust oder die Offenlegung dieser Daten kosten kann.

Wir verwenden dafür die Begriffe „Value“ und „Sensitivity“ – sozusagen ein positives und ein negatives Maß. Der Wert wird oft im Hinblick auf den zukünftigen Wert oder die Chance betrachtet. Sensibilität ist sehr defensiv; es bezieht sich auf Risiken auf finanzieller Ebene (regulatorische oder gesetzliche Strafen) und auf Reputations- oder Firmenwertverlust.

Bewertung bezieht sich direkt auf Integrität und Verfügbarkeit . Wir werden dies danach beurteilen, welchen Nutzen die Daten generieren können oder wie viel Schaden angerichtet wird, wenn der Zugriff darauf verloren geht. Wir behandeln Sensibilität hauptsächlich in Bezug auf Vertraulichkeit , die am Schaden oder der Haftung gemessen werden muss, wenn sie aufgedeckt wird.

Die gemeinsame Struktur von Bewertung und Sensitivität

Betrachten wir nun die Bewertung und Sensitivität anhand unserer Datenbank. Wenn wir uns das Datenmodell erneut ansehen, stellen wir fest, dass diese Eigenschaften nur relativ zu einem Verein oder einer Person sind. Ein Verein oder eine Person profitiert vom Wert von etwas, und sie leiden, wenn etwas Heikles öffentlich gemacht wird. Daher wird jede dieser Einschätzungen in Bezug auf einen Verein oder eine Person erfasst. Wenn wir unsere Datenentitäten betrachten, stellen wir sicher, dass jede, die einen Wert (Nutzen) hat, auch eine Empfindlichkeit (Risiko) birgt und umgekehrt. Jede beteiligte Entität verfügt also über separate Bewertungs- und Sensitivitätsfelder. Sie sind in den meisten Fällen optional oder standardmäßig. Außerdem werden beide in Geld ausgedrückt:ein Währungswert, der auf Hundertstel eines US-Dollars genau ist. (Aus Gründen der Klarheit verwenden wir nur eine Währung.) Feiern Sie es oder beklagen Sie es, Geld ist unsere einzige brauchbare Metrik für beides. Um diese Gemeinsamkeit zu nutzen, nennen wir diese "Wichtigkeit".

Als Datenmodellierer können wir das selbst nicht wirklich beziffern. Selbst als Seiten- oder Datenbankbetreiber wissen wir nicht genug, um diese Werte zuzuordnen; Außerdem gehören die Daten nicht vollständig uns. Für vereinsspezifische Daten müssen wir diesen Verein seinen eigenen zuweisen lassen Wichtigkeitsstufen und ihre Regeln für die Verwendung dieser Stufen. Dann wenden wir ihre Regeln auf ihre Daten an.

Beginnen wir mit den Arten von Entitäten, die Clubs zuweisen können.

Clubdaten

Die Clubeinheiten sind:

  • Verein
  • Club_Büro
  • Offizier
  • Mitglied
  • Album
  • Album_Foto
  • Foto

Wir fügen Valuation hinzu und Sensitivity Spalten zu jedem von diesen. Denn diese Säulen gehören zum Club , ihre Namen sind spezifisch – z. club_sensitivity .

Hier ist unser Satz von Fokustabellen für Club , einschließlich Person :



Persönliche Daten

Nun müssen wir die Person ansprechen juristische Person. Auch hier ordnen wir die Werte nicht zu – das ist das Vorrecht der Person. Natürlich müssen wir Wichtigkeitsspalten zu Person hinzufügen . Aber um die Privatsphäre besser zu unterstützen, werden wir diese Entität feiner aufteilen. Schließlich ist der Datenschutz der Schlüssel zur Datensensibilität.

Zuerst fügen wir eine neue Spalte namens monicker hinzu das ist wie ein Benutzername oder Alias. Clubmitglieder können diesen anstelle ihres tatsächlichen Namens zur Identifizierung verwenden. Wir werden ein Bewertungs-/Empfindlichkeits-Spaltenpaar für die Name-Monicker-Assoziation bereitstellen. Diese werden person_name_valuation sein und person_name_sensitivity . Die restlichen Felder werden von diesen beiden Paaren gesteuert.

Eine Person Die Clubaktivität von ist ebenso ihr Interesse wie der Club 's. Daher werden wir Member dieselben Wichtigkeitsfelder hinzufügen und Offizier .

Jetzt könnten wir person_importance hinzufügen Felder zum Foto Entität, aber sehen Sie sich den photo_content an Säule. An einem Foto können mehrere Personen beteiligt sein, und dies ist Teil dessen, was wir in photo_content. speichern Daher werden wir die Wichtigkeitsfelder auf photo_content. setzen statt auf Foto.

Das „sensibilisierte“ Modell

Wir haben unser Datenmodell modifiziert, um Datenwert und Datensensibilität überall dort zuzuschreiben, wo sie benötigt werden. Das Folgende ist unser endgültiges Schema.

Wir haben sorgfältig darauf geachtet, das ursprüngliche Schema nicht durch zusätzliche Beziehungen oder Einschränkungen zu verzerren. Dies ist von entscheidender Bedeutung, da wir dieses Schema als genaue Analyse der echten Daten mit echten Geschäftsregeln betrachten.




Es ist schwierig, Ihren Daten irgendeine Art von inhärenter Bedeutung beizumessen. Es ist schlimmer, wenn Sie versuchen, es ohne Unterstützung im Modell oder Schema auf eine Datenbank anzuwenden. Dieser Artikel demonstriert eine Technik, um diese Informationen so anzuhängen, dass die intrinsischen Geschäftsteile des Modells nicht verzerrt werden.

Die Flexibilität und Modifizierbarkeit von Value und Empfindlichkeit sind hier zentrale Ziele. Wenn Sie beginnen, diesen Attributen reale Werte zuzuweisen, werden Sie feststellen, dass Sie sie ändern und Ihren Ansatz überarbeiten müssen. Das ist ein Grund dafür, diese Werte individuell an die Tabellen selbst anzuhängen, anstatt sie an Bord zu haben. Der Nachteil ist, dass es aufgrund der vielen Orte für diese Werte ziemlich kompliziert wird. Dies kann sich sogar in der Verwendung des Modells zeigen. Wir werden uns in unserem nächsten Artikel mit dem facettenreichen Thema des Komplexitätsmanagements in der Informationssicherheit befassen.

Bitte hinterlassen Sie Kommentare oder Kritik in unserer Combox.