Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Managed Instance
A maioria dos aplicativos do Service Broker que envolvem mais de uma instância é executada no contexto de segurança de uma entidade de banco de dados criada especificamente para o aplicativo. Essas entidades de banco de dados devem ter as permissões mínimas necessárias para realizar as tarefas que o aplicativo executa.
As considerações a seguir se aplicam a entidades de banco de dados criadas para aplicativos do Service Broker:
A autorização remota do Service Broker se aplica quando um aplicativo remoto do Service Broker se conecta ao SQL Server e entrega uma mensagem à instância. A entidade de banco de dados especificada para autorização remota deve ter
CONNECTpermissão no banco de dados que hospeda o serviço inicial e deve terSENDpermissão para o próprio serviço iniciador. O usuário deve possuir o certificado usado para autenticação. Não há requisitos para que o usuário possua outros objetos, tenha outras permissões ou possa fazer login com qualquer outro mecanismo.Para que uma entidade de banco de dados inicie uma conversa, essa entidade deve ter
RECEIVEpermissões na fila para o serviço inicial.A entidade de banco de dados proprietária do serviço inicial deve ter
SENDpermissões no serviço de destino.Para que uma entidade de banco de dados envie mensagens para um serviço, essa entidade de segurança deve ter
SENDpermissões no serviço. Para serviços hospedados em uma instância diferente, a segurança da caixa de diálogo do Service Broker determina a entidade do banco de dados na instância remota. Para obter mais informações, consulte Segurança da caixa de diálogo do Service Broker. O Service Broker não considera a associação a funções do Windows ao verificarSENDpermissões.O usuário especificado como o usuário para um procedimento armazenado de ativação deve ter permissão para executar o procedimento. Freqüentemente, o usuário especificado tem as permissões necessárias para executar as instruções no procedimento. No entanto, se o procedimento armazenado em si for definido com uma
EXECUTE AScláusula, as instruções no procedimento armazenado serão executadas com o contexto de segurança definido pelo procedimento armazenado. O SQL Server primeiro define o contexto de segurança para o usuário especificado para a fila. Em seguida, o SQL Server executa o procedimento armazenado e o procedimento armazenado altera o contexto de segurança para o usuário especificado para o procedimento.Quando a segurança de transporte do Service Broker usa SSPI, a conta de serviço do banco de dados remoto deve ter
CONNECTpermissão nomastere também deve corresponder a um logon. Portanto, a conta que a instância remota do SQL Server executa como deve ter permissão para entrar no SQL Server usando a Autenticação do Windows. Não há requisitos para que o logon tenha outras permissões ou possua objetos em qualquer banco de dados.