Όλο και περισσότεροι τον τελευταίο καιρό ασχολούνται με το επερχόμενο GDPR (General Data Protection Regulation) το οποίο έχει εγκριθεί από την ΕΕ και τίθεται σε ισχύει το Μάρτιο 2018.
Το GDPR είναι ένα σύνολο από κανόνες και διαδικασίες και δεν θα μπω στην διαδικασία να το αναλύσω στο άρθρο αυτό καθώς όποιος θέλεις μπορεί να το διαβάσει από το site της ΕΕ
.
Αυτό που θα κάνω στο άρθρο αυτό είναι να παραθέσω τις δυνατότητες που έχουμε στο SQL Server και οι οποίες μπορούν να χρησιμοποιηθούν ώστε να είναι αυτός που θα τις χρησιμοποιήσει κανονιστικά συμμορφωμένος.
Επειδή πλέον οι περισσότεροι έχουμε περιβάλλοντα που είναι τόσο on premise όσο και στο cloud η αναφορά μου θα γίνει και για τα δύο.
Ας ξεκινήσουμε
SQL Azure Database firewall
Όλες οι SQL Azure Databases μπορούν να γίνουν προσβάσιμες μόνο από συγκεκριμένες IP και αυτό γίνεται με firewall roles στο azure.
SQL Server Authentication
O SQL Server τα τελευταία 10 χρόνια είναι μακρά το ασφαλέστερο RDBMS και αυτό διότι έχεις την δυνατότητα να ελέγξεις πλήρως τους χρήστες που θα μπαίνουν σε αυτό είτε με Active Directory Integration είτε με SQL Server Logins. Και τα δυο αυτά authentication models είναι διαθέσιμα τόσο σε on premise instances όσο και σε SQL Azure Databases.
SQL Server Authorization
Συμπληρωματικά με το προηγούμενο ένα από τα μεγαλύτερα πλεονεκτήματα που έχει ο SQL Server είναι ότι παρέχει τέτοιες δυνατότητες που μπορεί να υλοποιήσει κανείς εύκολα αυτό που το GDPR θέλει και δεν είναι άλλο από την αρχή των λιγότερων δικαιωμάτων (principle of least privilege). Κάτι τέτοιο γίνεται καθώς μπορούμε να ορίσουμε προσβάσεις από database level μέχρι object level κάνοντας χρήση είτε role base security ή personal base security και application roles.
Dynamic Data Masking
Ενσωματωμένη δυνατότητα στο SQL Server από την έκδοση 2016 (compatibility 130) όσο και σε SQL Azure Databases. Με αυτή μπορείς να κάνεις masking σε ευαίσθητες πληροφορίες όταν low level users οι εφαρμογές κάνουν access αυτές. Στην ουσία είναι on the fly data masking και δεν αλλάζει τα data στην database.
Row Level Security
Ακόμα μια ενσωματωμένη δυνατότητα από τις τελευταίες εκδόσεις τόσο σε on premise instances όσο και σε SQL Azure Databases. Προσφέρει την δυνατότητα (και αρκετά εύκολα) να μπορεί ο κάθε χρήστης να βλέπει τα records που πρέπει να δει χωρίς να χρειάζεται να μπαίνουν where filters στα queries.
Transparent data encryption
Παρέχει προστασία των δεδομένων με το να κάνει encryption at rest σε επίπεδο database, backups και transaction logs σε φυσικό επίπεδο.
Always Encrypted
Ένα πραγματικό καινοτόμο χαρακτηριστικό για την προστασία των αρκετά ευαίσθητων δεδομένων με ένα τέτοιο τρόπο που τα encryption keys δεν μοιράζονται σε κάθε application και κάθε workstation.
SQL Server Audit
Από τις βασικές προϋποθέσεις του GDPR είναι η καταγραφή των ενεργειών που γίνονται από τους χρήστες τόσο σε Server level όσο και σε database level. Αυτό μπορεί αρκετά εύκολα να επιτευχθεί κάνοντας χρήση του SQL Server Audit.
SQL Database Threat Detection
Αν και σε αυτή την φάση είναι διαθέσιμο για SQL Azure Databases εντούτοις παρέχει την άμεση ενημέρωση στους υπεύθυνους όταν παρατηρηθεί κάποια ασυνήθιστη ενέργεια πάνω στα δεδομένα. Για να το πετύχει αυτό χρησιμοποιεί ένα πλήθος από σύνθετους αλγόριθμους (machine learning)
//antonch