PRZYZNAĆ uprawnienia do obiektów systemu (Transact-SQL)

Uprawnienia dotacji na obiekty systemowe, takie jak procedury składowane rozszerzonych procedur przechowywanych, funkcji i widoków.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

GRANT { SELECT | EXECUTE } ON [ sys.]system_object TO principal 

Argumenty

  • [ sys.] .
    syskwalifikator jest wymagana tylko wtedy, gdy odwołujesz się do widoki wykazu i dynamicznego zarządzania.

  • system_object
    Określa obiekt, w którym przyznana uprawnień.

  • principal
    Określa główny, do których udzieleniu zezwolenia.

Uwagi

Tej instrukcja może służyć do udzielania uprawnień na niektórych procedur przechowywanych, rozszerzonych procedur przechowywanych, tabela-wycenione funkcje, funkcji wartość skalarna , widoki widoki wykazu, widoków zgodności, INFORMATION_SCHEMA widoki, dynamiczne zarządzanie widokami i tabele systemowe są instalowane przez SQL Server.Każdy z tych obiektów systemu istnieje jako unikatowy rekord w bazie danych zasób serwera (mssqlsystemresource).Baza danych zasób jest tylko do odczytu.Łącze do obiektu jest ujawniona jako rekord w sys schemat każdej bazy danych.Uprawnienia do wykonać lub zaznacz obiekt systemowy można przyznać, odmowa i odwołane.

Przyznawanie uprawnień do wykonać lub zaznacz obiekt nie daje uprawnień wymaganych do korzystania z obiektu.Większość obiektów wykonywać operacje, dla których wymagane są dodatkowe uprawnienia.Na przykład użytkownik jest udzielane uprawnienie Wykonywanie na sp_addlinkedserver nie może utworzyć serwer połączony , chyba że użytkownik jest również element członkowski sysadmin stała rola serwera.

Rozpoznawanie nazw domyślnych rozpoznawania nazw niekwalifikowanych procedury do bazy danych zasób .W związku z tym sys kwalifikator jest wymagany podczas określania widoki wykazu i dynamicznego zarządzania.

Udzielanie uprawnień wyzwalaczy i kolumny obiektów systemu nie jest obsługiwane.

Uprawnienia do obiektów systemu zostanie zachowane podczas uaktualniania z SQL Server.

Obiekty systemowe są widoczne w sys.system_objects katalogu widoku.Uprawnienia do obiektów systemu są widoczne w sys.database_permissions widok w katalogu master bazy danych.

Następująca kwerenda zwraca informacje dotyczące uprawnień obiekty systemu:

SELECT * FROM master.sys.database_permissions AS dp 
    JOIN sys.system_objects AS so
    ON dp.major_id = so.object_id
    WHERE dp.class = 1 AND so.parent_object_id = 0 ;
GO

Uprawnienia

Wymaga uprawnień sterowania serwera.

Przykłady

A.Przyznanie uprawnienie SELECT do widoku

W przykładzie poniżej SQL Server logowania Sylvester1 uprawnienia wybierz widok, który zawiera listę SQL Server logowania.Przykład następnie udziela dodatkowych uprawnień, które jest wymagane, aby wyświetlić metadane na SQL Server logowania, które nie są własnością przez użytkownika.

USE AdventureWorks2008R2;
GRANT SELECT ON sys.sql_logins TO Sylvester1;
GRANT VIEW SERVER STATE to Sylvester1;
GO

B.Nadawanie uprawnień do wykonywania rozszerzona procedura składowana

W przykładzie poniżej EXECUTE zgody na xp_readmail do Sylvester1.

GRANT EXECUTE ON xp_readmail TO Sylvester1;
GO