Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Uprawnienia do kolumny

Termin Definicja
Uprawnienia do kolumny

Uprawnienia do kolumny nadaje się poleceniem GRANT z jawnym wskazaniem nazwy pola.

Składnia nadania praw do pojedynczego pola

W SQL Server uprawnienie zawęża się, dopisując listę kolumn po nazwie operacji, na przykład GRANT SELECT (nazwa, miasto) ON dbo.Kontrahenci TO rola_handlowcy. Mechanizm działa tylko dla trzech operacji: odczytu, aktualizacji oraz odwołań w kluczach obcych. Nie ma sensu przy usuwaniu, bo DELETE zawsze zabiera cały wiersz, ani przy wykonywaniu procedur. Istotna jest hierarchia: DENY nałożone na konkretną kolumnę przeważa nad GRANT nadanym na całą tabelę, więc nie da się go obejść szerszym uprawnieniem.

Widok, maskowanie i filtrowanie wierszy jako rozwiązania konkurencyjne

W praktyce częściej zamiast praw kolumnowych tworzy się widok zawierający wyłącznie dozwolone pola i nadaje uprawnienia na nim. Dzięki ciągłości właściciela obiektów użytkownik nie potrzebuje wtedy żadnych praw do tabeli bazowej, co upraszcza późniejsze audyty. Maskowanie danych działa inaczej — wartość jest widoczna w postaci zasłoniętej, ale kolumna wciąż wchodzi do wyniku, a użytkownik z odpowiednim uprawnieniem zobaczy ją w całości. Zabezpieczenie na poziomie wiersza rozwiązuje z kolei problem prostopadły: ogranicza zbiór rekordów, nie zestaw pól.

Gdzie ten mechanizm najczęściej się wykłada

Aplikacja budująca zapytania w postaci SELECT gwiazdka przestaje działać natychmiast, bo serwer odrzuca całe zapytanie z komunikatem o odmowie uprawnienia SELECT do wskazanej kolumny obiektu — nawet jeśli pozostałe pola są dostępne. To najczęstszy powód, dla którego prawa kolumnowe wprowadzone w bazie testowej wywracają program po wdrożeniu. Druga pułapka pojawia się przy odtwarzaniu bazy z kopii na innej instancji: identyfikatory loginów się nie zgadzają, użytkownicy zostają osieroceni i wszystkie szczegółowe uprawnienia przestają obowiązywać do czasu ich ponownego powiązania. Trzecia rzecz to konta o wysokich rolach serwerowych i właściciele bazy — dla nich żadne ograniczenie kolumnowe nie obowiązuje, więc kontrola oparta wyłącznie na nim jest złudna.

Kontrola dostępu do danych w programach handlowych

Przy Subiekcie, WAPRO i systemach Comarch pytania o to, kto może zobaczyć marże albo dane osobowe kontrahentów, wracają regularnie. Ustawiamy uprawnienia w samej aplikacji i w instancji SQL Server, dbając, żeby zmiana nie zablokowała codziennej pracy magazynu. Obsługujemy firmy i klientów indywidualnych, a serwer możemy przejąć na miejscu albo zabrać do pracowni własnym transportem.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę