Permissões GRANT do Agente de Serviços (Transact-SQL)

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure

Concede permissões em um contrato, tipos de mensagem, associações remotas, rotas ou serviços no Service Broker.

Convenções de sintaxe de Transact-SQL

Sintaxe

  
GRANT permission  [ ,...n ] ON  
    {    
              [ CONTRACT :: contract_name ]   
       | [ MESSAGE TYPE :: message_type_name ]    
       | [ REMOTE SERVICE BINDING :: remote_binding_name ]    
       | [ ROUTE :: route_name ]   
       | [ SERVICE :: service_name ]      
    }  
    TO database_principal [ ,...n ]   
    [ WITH GRANT OPTION ]  
        [ AS granting_principal ]  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

permission
Especifica uma permissão que pode ser concedida em um Service Broker protegível. Listada abaixo.

CONTRACT ::contract_name
Especifica o contrato no qual a permissão está sendo concedida. O qualificador de escopo "::" é obrigatório.

MESSAGE TYPE ::message_type_name
Especifica o tipo de mensagem no qual a permissão está sendo concedida. O qualificador de escopo "::" é obrigatório.

REMOTE SERVICE BINDING ::remote_binding_name
Especifica a associação de serviço remoto na qual a permissão está sendo concedida. O qualificador de escopo "::" é obrigatório.

ROUTE ::route_name
Especifica a rota na qual a permissão está sendo concedida. O qualificador de escopo "::" é obrigatório.

SERVICE ::nome_do_serviço
Especifica o serviço no qual a permissão está sendo concedida. O qualificador de escopo "::" é obrigatório.

database_principal
Especifica a entidade de segurança para o qual a permissão está sendo concedida. Um dos seguintes:

  • usuário de banco de dados

  • função de banco de dados

  • função de aplicativo

  • usuário de banco de dados mapeado para um logon do Windows

  • usuário de banco de dados mapeado para um grupo do Windows

  • usuário de banco de dados mapeado para um certificado

  • usuário de banco de dados mapeado para uma chave assimétrica

  • usuário de banco de dados não mapeado para uma entidade do servidor.

GRANT OPTION
Indica que o principal também terá a capacidade de conceder a permissão especificada a outros principais.

granting_principal
Especifica uma entidade de segurança da qual a entidade de segurança que executa esta consulta deriva seu direito de conceder a permissão. Um dos seguintes:

  • usuário de banco de dados

  • função de banco de dados

  • função de aplicativo

  • usuário de banco de dados mapeado para um logon do Windows

  • usuário de banco de dados mapeado para um grupo do Windows

  • usuário de banco de dados mapeado para um certificado

  • usuário de banco de dados mapeado para uma chave assimétrica

  • usuário de banco de dados não mapeado para uma entidade do servidor.

Comentários

Contratos do Agente de Serviços

Um contrato do Agente de Serviços é um item protegível do nível do banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser concedidas em um contrato do Agente de Serviços são listadas a seguir, junto com as permissões mais gerais que as contêm implicitamente.

Permissão do contrato do Agente de Serviços Indicado pela permissão do contrato do Agente de Serviços Implícito na permissão de banco de dados
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL ALTER ANY CONTRACT
REFERENCES CONTROL REFERENCES
VIEW DEFINITION CONTROL VIEW DEFINITION

Tipos de mensagem do Agente de Serviços

Um tipo de mensagem do Agente de Serviços é um item protegível do nível do banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser concedidas em um tipo de mensagem do Agente de Serviços são listadas a seguir, junto com as permissões mais gerais que as contêm implicitamente.

Permissão do tipo de mensagem do Agente de Serviços Indicado pela permissão do tipo de mensagem do Agente de Serviços Implícito na permissão de banco de dados
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL ALTER ANY MESSAGE TYPE
REFERENCES CONTROL REFERENCES
VIEW DEFINITION CONTROL VIEW DEFINITION

Associações de serviço remoto do Agente de Serviços

Uma associação de serviço remoto do Agente de Serviços é um item protegível do nível do banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser concedidas em uma associação de serviço remoto do Agente de Serviços são listadas a seguir, junto com as permissões mais gerais que as contêm implicitamente.

Permissão da associação de serviço remoto do Agente de Serviços Indicado pela permissão da associação de serviço remoto do Agente de Serviços Implícito na permissão de banco de dados
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL ALTER ANY REMOTE SERVICE BINDING
VIEW DEFINITION CONTROL VIEW DEFINITION

Rotas do Agente de Serviços

Uma rota do Agente de Serviços é um item protegível do nível do banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser concedidas em uma rota do Agente de Serviços são listadas a seguir, junto com as permissões mais gerais que as contêm implicitamente.

Permissão da rota do Agente de Serviços Indicado pela permissão da rota do Agente de Serviços Implícito na permissão de banco de dados
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL ALTER ANY ROUTE
VIEW DEFINITION CONTROL VIEW DEFINITION

Serviços do Agente de Serviços

Um serviço do Agente de Serviços é um item protegível do nível do banco de dados contido pelo banco de dados que é seu pai na hierarquia de permissões. As permissões mais específicas e limitadas que podem ser concedidas em um serviço do Agente de Serviços são listadas a seguir, junto com as permissões mais gerais que as contêm implicitamente.

Permissão do serviço do Agente de Serviços Indicado pela permissão do serviço do Agente de Serviços Implícito na permissão de banco de dados
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
SEND CONTROL CONTROL
ALTER CONTROL ALTER ANY SERVICE
VIEW DEFINITION CONTROL VIEW DEFINITION

Permissões

O concessor (ou a entidade de segurança especificada com a opção AS) deve ter a própria permissão com GRANT OPTION ou uma permissão superior que tenha a permissão que está sendo concedida implícita.

Se a opção AS for usada, esses requisitos adicionais se aplicarão.

AS granting_principal Permissão adicional necessária
Usuário de banco de dados A permissão IMPERSONATE no usuário, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Usuário de banco de dados mapeado para um logon do Windows A permissão IMPERSONATE no usuário, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Usuário de banco de dados mapeado para um grupo do Windows Associação no grupo do Windows, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Usuário de banco de dados mapeado para um certificado Associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Usuário de banco de dados mapeado para uma chave assimétrica Associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Usuário de banco de dados não mapeado para nenhuma entidade de segurança de servidor A permissão IMPERSONATE no usuário, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Função de banco de dados Permissão ALTER na função, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.
Função de aplicativo Permissão ALTER na função, associação na função de banco de dados fixa db_securityadmin, associação na função de banco de dados fixa db_owner ou associação na função de servidor fixa sysadmin.

Os proprietários de objetos podem conceder permissões nos objetos de sua propriedade. Principais com a permissão CONTROL em um item protegível podem conceder permissão nesse item.

As entidades autorizadas com a permissão CONTROL SERVER, como os membros da função de servidor fixa sysadmin, podem conceder qualquer permissão em qualquer protegível do servidor. As entidades autorizadas com a permissão CONTROL em um banco de dados, como os membros da função de banco de dados fixa db_owner, podem conceder qualquer permissão para qualquer protegível do banco de dados. Os usuários autorizados da permissão CONTROL em um esquema podem conceder qualquer permissão em qualquer objeto dentro do esquema.

Consulte Também

SQL Server Service Broker
GRANT (Transact-SQL)
Permissões (Mecanismo de Banco de Dados)
Entidades (Mecanismo de Banco de Dados)