Udostępnij za pośrednictwem


Tworzenie roli (Transact-SQL)

Tworzy nową rola bazy danych w bieżącej bazie danych.

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

Składnia

CREATE ROLE role_name [ AUTHORIZATION owner_name ]

Argumenty

  • role_name
    Jest to nazwa roli ma zostać utworzony.

  • AUTORYZACJAowner_name
    Baza danych użytkownika lub rolę, która jest do własnej nowej roli.Jeśli żaden użytkownik nie jest określony, rola będzie własnością użytkownika, który wykonuje Utwórz ROLĘ.

Uwagi

Role są bazy danych -poziom securables.Po utworzeniu roli można skonfigurować uprawnieniapoziom bazy danych - roli za pomocą dotacji, ODMÓW i REVOKE.Aby dodać członków do rola bazy danych, użyj sp_addrolemember procedura składowana.Aby uzyskać więcej informacji, zobacz Role poziom bazy danych.

Role bazy danych są widoczne w sys.database_role_members i sys.database_principals widoki wykazu.

PrzestrogaPrzestroga

Począwszy od programu SQL Server 2005 zachowanie schematów zostało zmienione. Z tego powodu kod źródłowy, który traktuje schematy jak odpowiedniki użytkowników baz danych, może przestać zwracać poprawne wyniki. Starych widoków wykazu, w tym sysobjects, nie należy używać w bazie danych, w której są używane następujące instrukcje DDL: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. W takich bazach danych należy używać nowych widoków wykazu. W nowych widokach wykazu uwzględniono rozdział podmiotów i schematów, który został wprowadzony w programie SQL Server 2005. Aby uzyskać więcej informacji dotyczących widoków wykazu, zobacz temat Widoki wykazu (Transact-SQL).

Uprawnienia

Wymaga uprawnienia Tworzenie roli w bazie danych.Po wybraniu opcji autoryzacji również wymagane są następujące uprawnienia:

  • Umożliwia przypisanie własności roli do innego użytkownika wymaga uprawnienia PERSONIFIKUJ na tego użytkownika.

  • Aby przypisać własność roli do innej roli wymaga członkostwo w roli odbiorcy lub ZMIEŃ uprawnienia tej roli.

  • Aby przypisać własność roli rola aplikacji, wymaga uprawnień ALTER w rola aplikacji.

Przykłady

A.Tworzenie rola bazy danych , który jest właścicielem jest użytkownik bazy danych

Poniższy przykład tworzy rola bazy danych buyers , właścicielem jest użytkownik BenMiller.

USE AdventureWorks2008R2;
CREATE ROLE buyers AUTHORIZATION BenMiller;
GO

B.Tworzenie rola bazy danych jest własnością środka rola bazy danych

Poniższy przykład tworzy rola bazy danych auditors , jest własnością db_securityadmin stałej rola bazy danych.

USE AdventureWorks2008R2;
CREATE ROLE auditors AUTHORIZATION db_securityadmin;
GO