GRANT Schema Permissions (Transact-SQL)

Udziela uprawnień do schematu.

Topic link iconKonwencje składni języka Transact-SQL

GRANT permission  [ ,...n ] ON SCHEMA :: schema_name
    TO database_principal [ ,...n ]
    [ WITH GRANT OPTION ]
    [ AS granting_principal ]

Argumenty

  • permission
    W tym polu jest zestaw wyników częściowych:Za pomocą opcji WITH RECOMPILE

  • ON SCHEMA :: schemat_name
    Za pomocą opcji WITH szyfrowanieKwalifikator zakres :: jest wymagany.

  • database_principal
    Określa główny, do których przyznane uprawnienie.Jedną z następujących czynności:

    • użytkownik bazy danych

    • rola bazy danych

    • Rola aplikacji

    • użytkownik bazy danych, zmapowany do identyfikatora logowania systemu Windows

    • użytkownik bazy danych, zmapowany do grupy systemu Windows

    • użytkownik bazy danych, zmapowany do certyfikat

    • mapowane na kluczu asymetrycznym, który użytkownik bazy danych

    • użytkownik bazy danych nie jest mapowane do głównego serwera.

  • OPCJA DOTACJI
    Wskazuje, że główny będzie również miał możliwości, aby udzielić określonych uprawnień do innych głównych.

  • AS granting_principal
    Określa główny, z którego podmiot, wykonywanie kwerendy pochodzi jej po prawej stronie, aby udzielić uprawnień.Jedną z następujących czynności:

    • użytkownik bazy danych

    • rola bazy danych

    • Rola aplikacji

    • użytkownik bazy danych, zmapowany do identyfikatora logowania systemu Windows

    • użytkownik bazy danych, zmapowany do grupy systemu Windows

    • użytkownik bazy danych, zmapowany do certyfikat

    • mapowane na kluczu asymetrycznym, który użytkownik bazy danych

    • użytkownik bazy danych nie jest mapowane do głównego serwera.

Remarks

Important noteImportant Note:

Połączenie uprawnień ALTER i REFERENCE w niektórych przypadkach może zezwalać posiadającym je użytkownikom na przeglądanie danych lub wykonywanie nieautoryzowanych funkcji.Na przykład użytkownik A z uprawnieniem ALTER do tabeli i uprawnieniem REFERENCE do funkcji może utworzyć kolumnę obliczaną korzystającą z funkcji i zlecić jej wykonanie.W tym przypadku użytkownik musi mieć także uprawnienie SELECT do kolumny obliczanej.

Schemat to zawarty w bazie danych obiekt zabezpieczany poziomu bazy danych, który jest obiektem nadrzędnym w hierarchii uprawnień.Poniżej znajduje się lista najbardziej konkretnych i ograniczonych uprawnień, jakich można udzielić do schematu, wraz z bardziej ogólnymi uprawnieniami, które zawierają je przez implikację.

Uprawnienia schematu

Implikowane przez uprawnienia schematu

Implikowane przez uprawnienie do bazy danych

FORMANT

FORMANT

FORMANT

PRZEJMOWANIE NA WŁASNOŚĆ

FORMANT

FORMANT

ZMIENIANIE

FORMANT

ZMIENIANIE DOWOLNEGO SCHEMATU

wykonać

FORMANT

wykonać

Aby wyświetlić właściwości operator plan wykonania

FORMANT

Aby wyświetlić właściwości operator plan wykonania

USUWANIE

FORMANT

USUWANIE

AKTUALIZACJA

FORMANT

AKTUALIZACJA

WYBIERZ OPCJĘ

FORMANT

WYBIERZ OPCJĘ

ODWOŁANIA

FORMANT

ODWOŁANIA

REJESTROWANIE ZMIAN W WIDOKU

FORMANT

FORMANT

DEFINICJA WIDOKU

FORMANT

DEFINICJA WIDOKU

Ostrzeżenie

Użytkownik z uprawnieniem ALTER do schematu może przy użyciu łańcucha własności uzyskać dostęp do obiektów zabezpieczonych w innych schematach, w tym obiektów zabezpieczonych, do których ma jawnie zakazany dostęp.Jest to spowodowane tym, że łańcuch własności pomija sprawdzanie uprawnień do obiektów będących przedmiotem odwołania, jeśli są własnością podmiotu będącego właścicielem obiektów, które się do nich odwołują.Użytkownik z uprawnieniem ALTER do schematu może tworzyć procedury, synonimy i widoki będące własnością właściciela schematu.Obiekty te będą miały dostęp (poprzez łańcuch własności) do informacji z innych schematów, które są własnością właściciela schematu.W miarę możliwości należy unikać udzielania uprawnienia ALTER do schematu, jeśli właściciel tego schematu posiada także inne schematy.

Korzysta z rozpoznawania nazw odłożone.Procedura przechowywana jest tworzony, mimo że czas kompilacji nie tabela, do którego odwołuje się.Jednak musi istnieć w tabela, po wykonaniu tej procedury.Aby zweryfikować, że procedura przechowywana została utworzona, uruchom następującą kwerendę:

Użytkownik U1 ma uprawnienie CREATE PROCEDURE do bazy danych i uprawnienie EXECUTE do schematu S1.Użytkownik U1 może zatem utworzyć procedurę składowana, a następnie uzyskać dostęp do zakazanego obiektu T1 w tej procedurze składowanej.

Użytkownik U1 ma uprawnienie CREATE SYNONYM do bazy danych i uprawnienie SELECT do schematu S1.Użytkownik U1 może zatem utworzyć w schemacie S1 synonim zakazanego obiektu T1, a następnie uzyskać dostęp do zakazanego obiektu T1 przy użyciu synonimu.

Użytkownik U1 ma uprawnienie CREATE VIEW do bazy danych i uprawnienie SELECT do schematu S1.Użytkownik U1 może zatem utworzyć w schemacie S1 widok, aby uzyskać za pomocą kwerendy dane z zakazanego obiektu T1, a następnie uzyskać dostęp do zakazanego obiektu T1 przy użyciu widok.

Za pomocą parametru WYJŚCIOWEGO kursor

Uprawnienia

Przekazująca (lub w opcji jako główny) musi mieć uprawnienie do samego siebie z GRANT OPTION lub wyższych uprawnień, które wymaga uprawnień, przyznanie.

Zazwyczaj te tabele są tworzone lub usuwane podczas ponownego uruchamiania bazy danych.

JAK granting_principal

Dodatkowe wymagane uprawnienie

Użytkownik bazy danych

Uprawnienie do PERSONIFIKACJI użytkownika, członkostwa w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

Użytkownik bazy danych, zmapowany do identyfikatora logowania systemu Windows

Uprawnienie do PERSONIFIKACJI użytkownika, członkostwa w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

Użytkownik bazy danych, zmapowany do grupy systemu Windows

Członkostwo w grupie systemu Windows, członkostwo w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

Użytkownik bazy danych, zmapowany do certyfikat

Członkostwo w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

Mapowane na kluczu asymetrycznym, który użytkownik bazy danych

Członkostwo w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

Użytkownik bazy danych nie jest mapowane do dowolnego serwera głównego

Uprawnienie do PERSONIFIKACJI użytkownika, członkostwa w db_securityadmin stała rola bazy danych, członkostwo w db_owner stała rola bazy danych, lub członkostwo w roli sysadmin stałych serwera.

rola bazy danych

ALTER uprawnienia roli, członkostwo w roli db_securityadmin stałej bazy danych, członkostwo w roli db_owner stałej bazy danych lub członkostwa w sysadmin stała rola serwera.

Rola aplikacji

ALTER uprawnienia roli, członkostwo w roli db_securityadmin stałej bazy danych, członkostwo w roli db_owner stałej bazy danych lub członkostwa w sysadmin stała rola serwera.

Właściciele obiektów mogą udzielać uprawnienia do obiektów będących ich własnością.Podmioty z uprawnieniem CONTROL do obiektu zabezpieczonego mogą udzielać uprawnień do tego obiektu zabezpieczonego.

Grantees uprawnienie Kontrola serwera, takie jak członkowie roli sysadmin stałych serwera, może udzielić im oficjalnie uprawnienia w przypadku dowolnego zabezpieczany na serwerze.systypesZazwyczaj kwerendy w tej samej klasie są identyczne, z wyjątkiem wartości parametru.

Przykłady

A.Wyjście kursor parametry są używane do przekazania kursora, która jest lokalnym procedurę przechowywaną do wywoływania partia, procedura przechowywana lub wyzwalacza.

GRANT INSERT ON SCHEMA :: HumanResources TO guest;

B.Udziel uprawnienie SELECT do schematu PERSON użytkownikowi bazy danych WilJo.

GRANT SELECT ON SCHEMA :: Person TO WilJo WITH GRANT OPTION;

Historia zmian

Microsoft Learning

Dodane uprawnienia OLEDZENIE VIEW.