Czy istnieje jakieś ryzyko związane z udzielaniem użytkownikom uprawnień SQL SHOWPLAN dla programu SQL Server?

23

Robię dostrajanie wydajności w dużej bazie danych SQL Server 2008, a grupa IT nie chce udzielić pozwolenia SHOWPLAN. W przeszłości „Pokaż plan wykonania” był najskuteczniejszym sposobem zrozumienia wydajności poszczególnych zapytań i procedur.

Jakie ryzyko wiąże się z udzieleniem tego pozwolenia? Czy istnieje uzasadnione uzasadnienie tego ograniczenia dla kopii rozwojowej bazy danych?

Uwaga: Ta grupa IT SQL ma ponad 200 baz danych w jednej instancji SQL Server. Dzięki.

Odpowiedź : Biorę, że brak odpowiedzi oznacza, że ​​nie ma znaczących zagrożeń bezpieczeństwa, innych niż te wymienione poniżej. Zasadniczo ograniczenie tego w bazie danych programowania przynosi efekt przeciwny do zamierzonego.

Zaktualizuję to, jeśli ktoś wymyśli lepszą odpowiedź. Dziękuję za komentarze!

RaoulRubin
źródło

Odpowiedzi:

19

Spójrz na Showplan Security w Books Online, który mówi:

Użytkownicy, którzy mają SHOWPLAN, ALTER TRACElub VIEW SERVER STATEpozwolenie można zobaczyć kwerend, które są ujęte w produkcji Showplan. Te zapytania mogą zawierać poufne informacje, takie jak hasła. Dlatego zalecamy udzielanie tych uprawnień tylko użytkownikom upoważnionym do przeglądania poufnych informacji, takim jak członkowie stałej roli bazy danych db_owner lub członkowie stałej roli serwera sysadmin . Zalecamy również zapisywanie plików Showplan lub plików śledzenia zawierających zdarzenia związane z Showplan w lokalizacji korzystającej z systemu plików NTFS oraz ograniczenie dostępu do użytkowników upoważnionych do przeglądania poufnych informacji.

Rozważ na przykład następujące zapytanie:

SELECT COUNT(*)  FROM table_1  WHERE column_1 < 10 

Jeśli złośliwy użytkownik wygeneruje dane wyjściowe Showplan dla zestawu zapytań takich jak ten przykład i za każdym razem zastępuje wartość „10” w predykacie innymi stałymi, użytkownik może wywnioskować przybliżony rozkład danych dla wartości kolumn dla kolumny_1 w tabeli_1 , czytając szacowana liczba wierszy.

Ryzyko to wydaje się znikoma, zwłaszcza biorąc pod uwagę to jest serwer rozwoju, gdzie wszystkie zapytania będzie od deweloperów i osób IT, a nie użytkowników.

Paul White mówi GoFundMonica
źródło