Поделиться через


CREATE SERVER ROLE (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Создает новую, определяемую пользователем роль сервера.

Соглашения о синтаксисе Transact-SQL

Синтаксис

CREATE SERVER ROLE role_name [ AUTHORIZATION server_principal ]  

Аргументы

role_name

Имя создаваемой роли сервера.

AUTHORIZATION server_principal

Имя входа, которое будет принадлежать новой роли сервера. Если имя входа не указано, владельцем роли сервера станет имя входа, выполнившее инструкцию CREATE SERVER ROLE.

Замечания

Роли сервера являются защищаемыми объектами уровня сервера. После создания роли сервера необходимо настроить для нее разрешения уровня сервера при помощи инструкций GRANT, DENY и REVOKE. Для добавления или удаления имен входа из роли сервера используется инструкция ALTER SERVER ROLE (Transact-SQL). Чтобы удалить роль сервера, используйте инструкцию DROP SERVER ROLE (Transact-SQL). Дополнительные сведения см. в статьеsys.server_principals (Transact-SQL).

Для просмотра ролей сервера выполните запрос к представлениям каталога sys.server_role_members и sys.server_principals.

Ролям сервера нельзя предоставить разрешение на защищаемые объекты уровня базы данных. Сведения о создании ролей базы данных см. в статье CREATE ROLE (Transact-SQL).

Сведения о проектировании системы разрешений см. в статье Getting Started with Database Engine Permissions.

Разрешения

Требует разрешения CREATE SERVER ROLE или членства в предопределенной роли сервера.

Также требует разрешения IMPERSONATE на server_principal для имен входа, разрешения ALTER для ролей сервера, которые используются в качестве server_principal, или членства в группе Windows, которая используется в качестве server_principal.

Это вызывает событие "Управление субъектом-сервером аудита" с типом объекта, заданным для роли сервера и типа события для добавления.

Если для назначения владельца роли сервера указывается параметр AUTHORIZATION, необходимы также следующие разрешения.

  • Для передачи роли сервера во владение другому имени входа необходимо связанное с этим именем входа разрешение IMPERSONATE.

  • Для передачи роли сервера во владение другой роли сервера необходимо членство в роли сервера-получателя или связанное с этой ролью сервера разрешение ALTER.

Примеры

А. Создание роли сервера, принадлежащей имени входа

Следующий пример создает роль сервера buyers, принадлежащую имени входа BenMiller.

USE master;  
CREATE SERVER ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Создание роли сервера, принадлежащей предопределенной роли сервера

Следующий пример создает роль сервера auditors, принадлежащую предопределенной роли сервера securityadmin.

USE master;  
CREATE SERVER ROLE auditors AUTHORIZATION securityadmin;  
GO  

Следующие шаги