SQL Server

Zasada najmniejszych uprawnień – Row-Level Security – SQL Server SecurityFeatured

W tym wpisie będę ponownie poruszać się po obszarach bezpieczeństwa i ograniczania dostępu do danych. Mowa konkretnie będzie o Row-Level Security, który umożliwia nadawanie uprawnień do konkretnych wierszy w zależności np:

  • Stanowisku w firmie,
  • Departamentu, w którym użytkownik pracuje,
  • Regionu lub obszaru, w którym realizuję swoje obowiązki

Read more

SQL Server

Maskarada dla danych – Dynamic Data Masking – SQL Server SecurityFeatured

Dotychczas (przed SQL Server, 2016) jeśli posiadaliśmy tabele, w których wybrane kolumny były przeznaczone tylko dla niektórych użytkowników mieliśmy, co najmniej 3 opcje:

  • Nadać odpowiednie uprawnienia dla tych osób jednocześnie odebrać pozostałym. Czyli w myśl zasady wszystko albo nic,
  • Przykryć tabele widokiem umożliwiając odczyt danych z kolumn mnie wrażliwych dla osób nieupoważnionych. Można to uznać za uzupełnienie ww. punktu.
  • Wykorzystać metodę szyfrowania danych, np. Cell-Level Encryption

Jednak wraz z wersja SQL Server 2016 mamy do dyspozycji dodatkową funkcjonalność, która może spełniać takie wymaganie biznesowe. Mowa tutaj o Dynamic Data Masking.

Read more

SQL Server

Wpływ parametrów BUFFERCOUNT i MAXTRANSFERSIZE na odtwarzanie bazy danychFeatured

Jak często zdarza Ci się odtwarzać kopie zapasową kluczowego systemu swojej firmy? W moim przypadkach jest to rzadkość. Nawet, jeśli jest to przećwiczone, zgodnie z przygotowaną procedurą, kopia zapasowa jest „pewna” to towarzyszy przy tym spory niepokój. Nie zastanawiam się jak długo będzie trwał RESTORE tylko czy w ogóle pójdzie.

Nawet pomijając takie parametry biznesowe jak RTO (recovery time objective) czyli czas, w jakim należy przywrócić bazy danych po wystąpieniu awarii oraz RPO (recovery point objective) czyli akceptowalny poziom utraty danych wyrażony w czasie. W naszych celach jako DBA powinna znaleźć się optymalizacja czasu odtwarzania (jak i tworzenia kopii) baz danych. W tym mogą być pomocne, takie parametry jak BUFFERCOUNT i MAXTRANSFERSIZE.

Read more

SQL Server

Czemu wykonywanie kopii zapasowych to już za mało? Backup Encryption – SQL Server SecurityFeatured

Słyszałeś o firmie River City Media? Ja nie słyszałbym gdyby nie zasłynęła z faktu, że na początku 2017 roku przyczyniła się prawdopodobnie do największego wycieku danych. Największego, bo mowa o 1,4 miliarda emaili wraz z imionami, nazwiskami, adresami zamieszkania oraz adresami IP. Wszystko to przez przypadkowe udostępnienie kopii zapasowej. Można powiedzieć zdarza się, błąd, nie popełnia ich tylko ten, kto nic nie robi.  Jednak z takich incydentów trzeba wyciągać wnioski i uczyć się jak jeszcze lepiej chronić swoje dane i dane „swoich” firm. Read more

SQL Server

[cz. II] Always Encrypted – implementacja – SQL Server SecurityFeatured

W poprzednim wpisie przedstawiłem podstawowe pojęcia związane z technologią z Always Encrypted. Wszystko to po to, aby w tym wpisie przejść przez kreator umożliwiający implementacje tego rozwiązania.

Kreator umożliwia stworzenie wymaganych klucze i skonfigurowane szyfrowanie dla wybranych kolumn. Również dla kolumn które wypełnione są już danymi. Sporo to upraszcza, bo jednak dużo większym wyzwaniem jest implementacja nowego rozwiązania dla istniejących systemów w organizacji niż wykonywanie tego samego dla nowych projektów.

Read more

SQL Server

[cz. I] Always Encrypted – podstawy, podstaw… – SQL Server SecurityFeatured

Always Encrypted nowa funkcja dostarczona z SQL Server 2016, szyfruję dane w zdefiniowanych kolumnach. W odróżnieniu od TDE lub Cell Level Encryption te rozwiązanie kompleksowe, ponieważ szyfruję dane w spoczynku, w pamięci oraz podczas transmisji. Szyfrowanie i odszyfrowanie następuję dopiero po stronie klienta, w aplikacji końcowej. Z względu, na specyfikę działania Always Encrypted wymaga zastosowania odpowiedniego sterownika po stronie aplikacji klienckiej.

Read more

PowerShell

Windows PowerShell kiedyś, dziś i jego „jutro”…Featured

Pierwszy raz zetknąłem się z Windows PowerShell w konsoli Exchange Managment Shell. Było to jakies 7 lat. To już siedem lat z Windows PowerShell. Jeszcze jakiś czas temu PowerShell był głównie używany przez sympatyków i entuzjastów tego. Dzisiaj coraz częściej od kandydatów oczekuję się znajomość tego języka skryptowego. Szczerze mówiąc, ja nie wyobrażam sobie pracy bez tego rozwiązania. Postrzegam PowerShell, jako szwajcarski scyzoryk, który jestem wstanie dostosować do potrzeby chwili. Potencjał, jaki w nim tkwi jest ogromny. Read more

SQL Server

Service Master Key, Database Master Key, certyfikaty, klucze czyli model szyfrowania w SQL ServerFeatured

W poprzednim wpisie podjąłem tematykę bezpieczeństwa danych w SQL Server i sporo w nim było o rozwiązaniach szyfrujących. Jednak w implementacji rozwiązań takich jak Cell-Level, Transparent Data Encryption czy Backup Encrypted, nie możemy pominąć przygotowania zestawów kluczy i certyfikatów. Chcąc kontynuować omawianie rozwiązań bezpieczeństwa uznałem, że warto zacząć od przedstawienia modelu szyfrowania w SQL Server.

Read more

SQL Server

Jak zadbać o bezpieczeństwo danych? Przegląd dostępnych rozwiązania w SQL ServerFeatured

Zapewnienie bezpieczeństwa danych w porównaniu do tematyki wydajności to temat mniej popularny. Jednak obserwując chociażby ilość czyhających zagrożeń i globalnych ataków wymagania właścicieli danych w tej kwestii będą i muszą rosnąć z dnia na dzień. Wpis ten pokrótce ma na celu przybliżyć mechanizmy, rozwiązania, funkcjonalności Security w SQL Server z podziałem na:

  • Szyfrowanie danych
  • Kontrola dostępu
  • Monitoring

Przeglądając tą listę zastanów się, co używasz i co mógłbyś zaimplementować w swojej organizacji, aby zagwarantować/podnieść bezpieczeństwo danych.

Read more

PowerShell

5 wskazówek, które pomogą lepiej pracować z Windows PowerShellFeatured

1. Nadawanie intuicyjne nazwy funkcji.

Dobrym zwyczajem są nazwy według wzoru Czasownik-Rzeczownik. Również, aby nazwy były jak najłatwiejsze do zapamiętania. Czasownik należy wybrać z listy zwracanej przez polecenie Get-Verb. Szczególnie należy o to dbać, gdy kilka funkcji ma zostać ubrane w moduł. Stosując się do tego, unikniemy takich błędów.

Read more