Exportar (0) Imprimir
Expandir Tudo
Expandir Minimizar
Este artigo foi traduzido manualmente. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

ALTER SERVER ROLE (Transact-SQL)

Altera a associação de uma função de servidor ou altera nome de uma função de servidor definida pelo usuário. As funções de servidor fixas não podem ser renomeadas.

Aplica-se a: SQL Server (SQL Server 2012 até a versão atual).

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

ALTER SERVER ROLE server_role_name 
{
    [ ADD MEMBER server_principal ]
  | [ DROP MEMBER server_principal ]
  | [ WITH NAME = new_server_role_name ]
} [ ; ]

server_role_name

É o nome da função de servidor a ser alterada.

ADD MEMBER server_principal

Adiciona a entidade de segurança do servidor especificado à função de servidor. server_principal pode ser um logon ou uma função de servidor definida pelo usuário. server_principal não pode ser uma função de servidor fixa, uma função de banco de dados ou sa.

DROP MEMBER server_principal

Remove a entidade de segurança de servidor especificada da função de servidor. server_principal pode ser um logon ou uma função de servidor definida pelo usuário. server_principal não pode ser uma função de servidor fixa, uma função de banco de dados ou sa.

WITH NAME =new_server_role_name

Especifica o novo nome da função de servidor definida pelo usuário. Esse nome ainda não pode existir no servidor.

A alteração do nome de uma função de servidor definida pelo usuário não altera o número da ID, o proprietário ou as permissões da função.

Para alterar associação de função, ALTER SERVER ROLE substitui sp_addsrvrolemember e sp_dropsrvrolemember. Esses procedimentos armazenados foram preteridos.

É possível exibir as funções de servidor por meio de consulta das exibições do catálogo sys.server_role_members e sys.server_principals.

Para alterar o proprietário de uma função de servidor definida pelo usuário, use ALTER AUTHORIZATION (Transact-SQL).

Exige permissão ALTER ANY SERVER ROLE no servidor para alterar o nome de uma função de servidor definida pelo usuário.

Funções de servidor fixas

Para adicionar um membro a uma função de servidor fixa, você deve ser membro dessa função de servidor fixa ou da função de servidor fixa sysadmin.

Observação Observação

As permissões CONTROL SERVER e ALTER ANY SERVER ROLE não são suficientes para executar ALTER SERVER ROLE para uma função de servidor fixa, e a permissão ALTER não pode ser concedida em uma função de servidor fixa.

Funções de servidor definidas pelo usuário

Para adicionar um membro a uma função de servidor definida pelo usuário, você deve ser membro da função de servidor fixa sysadmin ou ter a permissão CONTROL SERVER ou ALTER ANY SERVER ROLE. Ou você deve ter a permissão ALTER naquela função.

Observação Observação

Ao contrário das funções de servidor fixas, os membros de uma função de servidor definida pelo usuário não têm permissão inerentemente para adicionar membros àquela mesma função.

A.Alterando o nome de uma função de servidor

O exemplo seguinte cria uma função de servidor chamada Product e, em seguida, altera o nome da função de servidor para Production.

CREATE SERVER ROLE Product ;
ALTER SERVER ROLE Product WITH NAME = Production ;
GO

B.Adicionando uma conta de domínio a uma função de servidor.

O exemplo a seguir adiciona uma conta de domínio chamada adventure-works\roberto0 à função de servidor definida pelo usuário chamada Production.

ALTER SERVER ROLE Production ADD MEMBER [adventure-works\roberto0] ;

C.Adicionando um logon do SQL Server a uma função de servidor

O exemplo a seguir adiciona o logon do SQL Server chamado Ted à função de servidor fixa diskadmin.

ALTER SERVER ROLE diskadmin ADD MEMBER Ted ;
GO

D.Removendo uma conta de domínio de uma função de servidor

O exemplo a seguir remove uma conta de domínio chamada adventure-works\roberto0 da função de servidor definida pelo usuário chamada Production.

ALTER SERVER ROLE Production DROP MEMBER [adventure-works\roberto0] ;

E.Removendo um logon do SQL Server de uma função de servidor

O exemplo a seguir remove o logon do SQL Server Ted da função de servidor fixa diskadmin.

ALTER SERVER ROLE Production DROP MEMBER Ted ;
GO

F.Concedendo a um logon a permissão para adicionar logons a uma função de servidor definida pelo usuário

O exemplo a seguir permite que Ted adicione outros logons à função de servidor definida pelo usuário chamada Production.

GRANT ALTER ON SERVER ROLE::Production TO Ted ;
GO

G.Para exibir a associação de função

Para exibir a associação de função, use a página Função (Membros) de Servidor em SQL Server Management Studio ou execute a consulta seguinte:

SELECT SRM.role_principal_id, SP.name AS Role_Name, 
SRM.member_principal_id, SP2.name  AS Member_Name
FROM sys.server_role_members AS SRM
JOIN sys.server_principals AS SP
    ON SRM.Role_principal_id = SP.principal_id
JOIN sys.server_principals AS SP2 
    ON SRM.member_principal_id = SP2.principal_id
ORDER BY  SP.name,  SP2.name

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2014 Microsoft