CREATE SERVER ROLE (Transact-SQL)CREATE SERVER ROLE (Transact-SQL)

ESTE TÓPICO APLICA-SE A: simSQL Server (a partir de 2012)nãoAzure SQL DatabasenãoAzure SQL Data Warehouse simParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (starting with 2012)noAzure SQL DatabasenoAzure SQL Data Warehouse yesParallel Data Warehouse

Cria uma função de servidor definida pelo usuário.Creates a new user-defined server role.

Ícone de link do tópico Convenções da sintaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxeSyntax

CREATE SERVER ROLE role_name [ AUTHORIZATION server_principal ]  

ArgumentosArguments

nome_da_funçãorole_name
É o nome da função de servidor a ser criada.Is the name of the server role to be created.

AUTORIZAÇÃO server_principalAUTHORIZATION server_principal
É o logon que possuirá a função de servidor.Is the login that will own the new server role. Se nenhum logon for especificado, a função de servidor será de propriedade do logon que executa CREATE SERVER ROLE.If no login is specified, the server role will be owned by the login that executes CREATE SERVER ROLE.

ComentáriosRemarks

As funções de servidor são protegíveis no nível do servidor.Server roles are server-level securables. Depois de criar uma função de servidor, configure as permissões no nível de servidor da função por meio de GRANT, DENY e REVOKE.After you create a server role, configure the server-level permissions of the role by using GRANT, DENY, and REVOKE. Para adicionar logons ou remover logons de uma função de servidor, use ALTER SERVER ROLE ( Transact-SQL ) .To add logins to or remove logins from a server role, use ALTER SERVER ROLE (Transact-SQL). Para descartar uma função de servidor, use DROP SERVER ROLE ( Transact-SQL ) .To drop a server role, use DROP SERVER ROLE (Transact-SQL). Para obter mais informações, veja sys.server_principals (Transact-SQL).For more information, see sys.server_principals (Transact-SQL).

Você pode exibir as funções de servidor consultando o server_role_members e sys. server_principals exibições do catálogo.You can view the server roles by querying the sys.server_role_members and sys.server_principals catalog views.

As funções de servidor não podem receber permissão nos protegíveis do banco de dados.Server roles cannot be granted permission on database-level securables. Para criar funções de banco de dados, veja CREATE ROLE (Transact-SQL).To create database roles, see CREATE ROLE (Transact-SQL).

Para obter informações sobre como criar um sistema de permissões, veja Introdução às permissões do mecanismo de banco de dados.For information about designing a permissions system, see Getting Started with Database Engine Permissions.

PermissõesPermissions

Exige a permissão CREATE SERVER ROLE ou associação na função de servidor fixa sysadmin.Requires CREATE SERVER ROLE permission or membership in the sysadmin fixed server role.

Também exige IMPERSONATE no server_principal para logons, permissão ALTER para funções de servidor usadas como o server_principalou associação em um grupo do Windows que é usado como o server_principal.Also requires IMPERSONATE on the server_principal for logins, ALTER permission for server roles used as the server_principal, or membership in a Windows group that is used as the server_principal.

Isso acionará o evento Audit Server Principal Management com o tipo de objeto definido para a função de servidor e o tipo de evento para adicionar.This will fire the Audit Server Principal Management event withthe object type set to server role and event type to add.

Ao usar a opção AUTHORIZATION para atribuir a propriedade de um função de servidor, as seguintes permissões também são necessárias:When you use the AUTHORIZATION option to assign server role ownership, the following permissions are also required:

  • Para atribuir a propriedade de uma função de servidor a outro logon, a permissão IMPERSONATE é necessária naquele logon.To assign ownership of a server role to another login, requires IMPERSONATE permission on that login.

  • Para atribuir a propriedade de uma função de servidor para outra, é necessária associação na função de servidor ou a permissão ALTER naquela função de servidor.To assign ownership of a server role to another server role, requires membership in the recipient server role or ALTER permission on that server role.

ExemplosExamples

A.A. Criando uma função de servidor que é de propriedade de um logonCreating a server role that is owned by a login

O exemplo a seguir cria a função de servidor buyers que é de propriedade do logon BenMiller.The following example creates the server role buyers that is owned by login BenMiller.

USE master;  
CREATE SERVER ROLE buyers AUTHORIZATION BenMiller;  
GO  

B.B. Criando uma função de servidor que é de propriedade de uma função de servidor fixaCreating a server role that is owned by a fixed server role

O exemplo a seguir cria a função de servidor auditors que é de propriedade da função de servidor fixa securityadmin.The following example creates the server role auditors that is owned the securityadmin fixed server role.

USE master;  
CREATE SERVER ROLE auditors AUTHORIZATION securityadmin;  
GO  

Consulte tambémSee Also

Remover função de servidor ( Transact-SQL ) DROP SERVER ROLE (Transact-SQL)
Entidades (Mecanismo de Banco de Dados) Principals (Database Engine)
EVENTDATA (Transact-SQL) EVENTDATA (Transact-SQL)
sp_addrolemember (Transact-SQL) sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL) sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL) sys.database_principals (Transact-SQL)
Guia de Introdução às permissões do mecanismo de banco de dadosGetting Started with Database Engine Permissions