Permissões de servidor REVOKE (Transact-SQL)
Remove as permissões em nível de servidor GRANT e DENY.
Convenções da sintaxe Transact-SQL
Sintaxe
REVOKE [ GRANT OPTION FOR ] permission [ ,...n ]
{ TO | FROM } <grantee_principal> [ ,...n ]
[ CASCADE ]
[ AS <grantor_principal> ]
<grantee_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
| server_role
<grantor_principal> ::= SQL_Server_login
| SQL_Server_login_mapped_to_Windows_login
| SQL_Server_login_mapped_to_Windows_group
| SQL_Server_login_mapped_to_certificate
| SQL_Server_login_mapped_to_asymmetric_key
| server_role
Argumentos
permission
Especifica uma permissão que pode ser concedida em um servidor. Para obter uma lista de permissões, consulte a seção Comentários mais adiante neste tópico.{ TO | FROM } <grantee_principal>
Especifica o principal a partir do qual a permissão está sendo revogada.AS <grantor_principal>
Especifica o principal a partir do qual o principal que executa esta consulta deriva seu direito de revogar a permissão.GRANT OPTION FOR
Indica que o direito de conceder a permissão especificada a outros principais será revogado. A permissão em si não será revogada.Importante Se a entidade tiver a permissão especificada sem a opção GRANT, a própria permissão será revogada.
CASCADE
Indica que a permissão que está sendo revogada também é revogada de outras entidades às quais ela foi concedida ou negada por essa entidade.Cuidado A revogação em cascata de uma permissão WITH GRANT OPTION concedida revogará as opções GRANT e DENY dessa permissão.
SQL_Server_login
Especifica um logon do SQL Server.SQL_Server_login_mapped_to_Windows_login
Especifica um logon do SQL Server mapeado para um logon do Windows.SQL_Server_login_mapped_to_Windows_group
Especifica um logon do SQL Server mapeado para um grupo do Windows.SQL_Server_login_mapped_to_certificate
Especifica um logon do SQL Server mapeado para um certificado do Windows.SQL_Server_login_mapped_to_asymmetric_key
Especifica um logon do SQL Server mapeado para uma chave assimétrica.server_role
Especifica uma função de servidor definida pelo usuário.
Comentários
As permissões no escopo de servidor podem ser revogadas somente quando o banco de dados atual é master.
REVOKE remove as permissões GRANT e DENY.
Use REVOKE GRANT OPTION FOR revogar o direito de conceder novamente a permissão especificada. Se o principal tiver a permissão com o direito de concedê-la, o direito de conceder a permissão será revogado, mas a permissão em si não será. Entretanto, se o principal tiver a permissão especificada sem a opção GRANT, a própria permissão será revogada.
As informações sobre permissões de servidor podem ser vistas na exibição do catálogo sys.server_permissions e as informações sobre principais de servidor podem ser vistas na exibição do catálogo sys.server_principals. As informações sobre a associação de funções de servidor podem ser vistas na exibição do catálogo sys.server_role_members.
Um servidor é o nível mais alto da hierarquia de permissões. As permissões mais específicas e limitadas que podem ser revogadas em um servidor são listadas na tabela a seguir.
Permissões de servidor |
Sugerido pela permissão de servidor |
---|---|
ADMINISTER BULK OPERATIONS |
CONTROL SERVER |
ALTER ANY AVAILABILITY GROUP |
CONTROL SERVER |
ALTER ANY CONNECTION |
CONTROL SERVER |
ALTER ANY CREDENTIAL |
CONTROL SERVER |
ALTER ANY DATABASE |
CONTROL SERVER |
ALTER ANY ENDPOINT |
CONTROL SERVER |
ALTER ANY EVENT NOTIFICATION |
CONTROL SERVER |
ALTER ANY EVENT SESSION |
CONTROL SERVER |
ALTER ANY LINKED SERVER |
CONTROL SERVER |
ALTER ANY LOGIN |
CONTROL SERVER |
ALTER ANY SERVER AUDIT |
CONTROL SERVER |
ALTER ANY SERVER ROLE |
CONTROL SERVER |
ALTER RESOURCES |
CONTROL SERVER |
ALTER SERVER STATE |
CONTROL SERVER |
ALTER SETTINGS |
CONTROL SERVER |
ALTER TRACE |
CONTROL SERVER |
AUTHENTICATE SERVER |
CONTROL SERVER |
CONNECT SQL |
CONTROL SERVER |
CONTROL SERVER |
CONTROL SERVER |
CREATE ANY DATABASE |
ALTER ANY DATABASE |
CREATE AVAILABILITY GROUP |
ALTER ANY AVAILABILITY GROUP |
CREATE DDL EVENT NOTIFICATION |
ALTER ANY EVENT NOTIFICATION |
CREATE ENDPOINT |
ALTER ANY ENDPOINT |
CREATE TRACE EVENT NOTIFICATION |
ALTER ANY EVENT NOTIFICATION |
EXTERNAL ACCESS ASSEMBLY |
CONTROL SERVER |
SHUTDOWN |
CONTROL SERVER |
UNSAFE ASSEMBLY |
CONTROL SERVER |
VIEW ANY DATABASE |
VIEW ANY DEFINITION |
VIEW ANY DEFINITION |
CONTROL SERVER |
VIEW SERVER STATE |
ALTER SERVER STATE |
Permissões
Requer a permissão CONTROL SERVER ou associação na função de servidor fixa sysadmin.
Exemplos
A.Revogando uma permissão de um logon
O exemplo a seguir revoga a permissão VIEW SERVER STATE de logon do SQL Server para WanidaBenshoof.
USE master;
REVOKE VIEW SERVER STATE FROM WanidaBenshoof;
GO
B.Revogando a opção WITH GRANT
O exemplo a seguir revoga o direito de conceder CONNECT SQL no logon do SQL Server para JanethEsteves.
USE master;
REVOKE GRANT OPTION FOR CONNECT SQL FROM JanethEsteves;
GO
O logon ainda tem a permissão CONNECT SQL, mas já não pode concedê-la a outros principais.
Consulte também
Referência
Permissões de servidor DENY (Transact-SQL)
Permissões de servidor REVOKE (Transact-SQL)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)