Z rynku

Bezpieczeństwo SQL Server 2005 w ujęciu programisty

· Bezpieczeństwo: systemy wyposażone są w funkcje zabezpieczeń ułatwiające ochronę przed atakami sieciowymi. Funkcje zabezpieczeń przyczyniają się do podwyższenia poziomu poufności, integralności oraz dostępności systemu i danych. · Poufność informacji: użytkownicy mają wpływ na bezpieczeństwo i wykorzystanie dotyczących ich danych oraz weryfikację zgodności procesów związanych z gromadzeniem, nadzorem i wykorzystaniem danych z przyjętymi zasadami rzetelnego przetwarzania informacji. · Niezawodność: gwarancja dostępności niezbędnych funkcji związanych z systemem i usługami, zwłaszcza w aspekcie operacji o podstawowym znaczeniu dla działalności prowadzonej przez organizacje klientów. W ostatnich latach firma Microsoft stworzyła inicjatywę Trustworthy Computing (patrz ramka), czyli inicjatywę bezpiecznego środowiska komputerowego. Aby utrzymać w mocy tę inicjatywę zespół SQL Server podjął następujące założenia dotyczące bezpieczeństwa: · bezpieczeństwo z definicji, · bezpieczeństwo w programowaniu, · bezpieczeństwo komunikacji. Do SQL Server 2005 wprowadzono następujące elementy bezpieczeństwa: · restrykcyjny dostęp do serwera, · blokowanie usług oraz bezpieczna konfiguracja usług, · redukcja przestrzeni ataku dla nowych elementów. Celem artykułu jest zaprezentowanie tych elementów bezpieczeństwa SQL Servera, które są istotne z punktu widzenia programisty. Bezpieczeństwo możemy podzielić na dwie części: pierwsza to bezpieczeństwo bazy danych, a druga to bezpieczeństwo samych danych. W pierwszej części zaprezentowane zostaną nowe techniki tworzenia użytkowników i zarządzania nimi, a w drugiej, w jaki sposób zabezpieczyć nasze dane – na przykład szyfrując je. Zarządzanie użytkownikami W wersji SQL Server 2000, aby stworzyć użytkownika, należało użyć procedury składowanej sp_addlogin. W nowej wersji SQL 2005 zarządzanie użytkownikami zostało mocno zmodyfikowane. Położono bardzo duży nacisk na lepszą integrację użytkowników z systemem operacyjnym i polisami bezpieczeństwa na nim ustawionych. W tym celu stworzono instrukcję CREATE LOGIN. Instrukcja ta pozwala na zarządzanie bardziej zaawansowanymi funkcjami wygasania haseł oraz wymuszania ustalonych reguł, co do jakości haseł. Przykład pokazuje najprostsze użycie – stworzenie użytkownika z określonym hasłem oraz nadanie uprawnień do domyślnej bazy danych: CREATE LOGIN ArturZ WITH PASSWORD = `password`, DEFAULT_DATABASE= AdventureWorks Kolejnym krokiem jest możliwość integracji z polisami systemu operacyjnego. W tym celu nasze polecenie należy rozszerzyć o dodatkowe słowa kluczowe. W tym przypadku powinno ono wyglądać następująco: CREATE LOGIN ArturZ WITH PASSWORD = ‘password’, DEFAULT_DATABASE = AdventureWorks, CHECK_POLICY = ON, CHECK_EXPIRATION = ON Jeśli w systemie operacyjnym ustalimy odpowiednie polisy będziemy mogli sprawdzić poprawność działania ustawień. W tym celu w konsoli ustawimy regułę na minimalną długość 8 znaków. Aby sprawdzić, czy polisy są sprawdzane, zmieńmy hasło naszego użytkownika: ALTER LOGIN ArturZ WITH PASSWORD = `az` Wynik działania tego polecenia będzie następujący: Msg 15116, Level 16, State 1, Line 1 Password validation failed. The password does not meet policy requirements because it is too short. Aby stworzyć użytkownika bazy danych opartego o login systemu operacyjnego należy wykonać następujące polecenie: CREATE LOGIN [server\\ArturZ] FROM WINDOWS WITH DEFAULT_DATABASE = AdventureWorks Schematy baz danych Schematem nazywamy grupę obiektów, które pozwalają na łatwe zabezpieczanie dostępu do danych. Dzięki temu możliwe jest przypisanie użytkownika do schematu w bardzo prosty sposób używając poleceń T-SQL-a. Aby korzystać ze schematów, należy je na początku stworzyć. Do tego celu służy polecenie CREATE SCHEMA: CREA


więcej
Pokaż według województw

Superoferty Pokaż