Eventos
31 de mar., 23 - 2 de abr., 23
O maior evento de aprendizado de SQL, Fabric e Power BI. 31 de março a 2 de abril. Use o código FABINSIDER para economizar $ 400.
Registre-se hoje mesmoNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
Aplica-se a: SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
PDW (Analytics Platform System)
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.
Convenções de sintaxe de Transact-SQL
-- Syntax for SQL Server, Azure SQL Database, Azure SQL Managed Instance
ALTER SERVER ROLE server_role_name
{
[ ADD MEMBER server_principal ]
| [ DROP MEMBER server_principal ]
| [ WITH NAME = new_server_role_name ]
} [ ; ]
-- Syntax for Parallel Data Warehouse
ALTER SERVER ROLE server_role_name ADD MEMBER login;
ALTER SERVER ROLE server_role_name DROP MEMBER login;
É o nome da função de servidor a ser alterada.
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 nem sa.
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 nem sa.
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 a 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).
No Banco de Dados SQL do Azure, ALTER SERVER ROLE
deve ser executado no banco de dados master
.
Requer a permissão ALTER ANY SERVER ROLE
no servidor para alterar o nome de uma função de servidor definida pelo usuário.
Funções fixas de servidor
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
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 ALTER
permissão 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 um membro da função fixa de servidor 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
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.
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
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] ;
O exemplo a seguir adiciona o logon no SQL Server chamado Ted
à função fixa de servidor diskadmin
.
ALTER SERVER ROLE diskadmin ADD MEMBER Ted ;
GO
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] ;
O exemplo a seguir remove o logon no SQL Server Ted
da função fixa de servidor diskadmin
.
ALTER SERVER ROLE Production DROP MEMBER Ted ;
GO
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
Para exibir a associação de função, use a página Função de Servidor (Membros) em SQL Server Management Studio ou execute a seguinte consulta:
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
O exemplo a seguir adiciona o logon no Anna
à função de servidor LargeRC
.
ALTER SERVER ROLE LargeRC ADD MEMBER Anna;
O exemplo a seguir remove a associação de Ana na função de servidor LargeRC
.
ALTER SERVER ROLE LargeRC DROP MEMBER Anna;
Eventos
31 de mar., 23 - 2 de abr., 23
O maior evento de aprendizado de SQL, Fabric e Power BI. 31 de março a 2 de abril. Use o código FABINSIDER para economizar $ 400.
Registre-se hoje mesmo