Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Instância Gerenciada de SQL do Azure
O Service Broker fornece uma estrutura de segurança flexível que ajuda você a proteger seus aplicativos. Este tópico explica as considerações sobre gerenciamento da segurança do Service Broker.
Segurança do plano
Cada aplicativo tem requisitos de segurança exclusivos. Parte do gerenciamento de segurança é planejar os requisitos cuidadosamente para seu aplicativo. A segurança de transporte, segurança de diálogo e a segurança de infraestrutura incorporadas ao SQL Server funcionam em conjunto para ajudar você a proteger seu aplicativo.
Todos os aplicativos usam a infraestrutura de segurança incorporada ao SQL Server. Cada operação no SQL Server ocorre em um contexto de segurança específico. Na maioria dos casos, você cria os principais de banco de dados do SQL Server para o aplicativo. Isso ajuda você a assegurar que cada etapa no aplicativo será executada em um contexto de segurança com apenas os privilégios necessários para essa etapa. Por exemplo, o principal especificado para a ativação interna precisa executar permissões no procedimento armazenado que o Service Broker ativa. O procedimento armazenado em si pode representar um usuário que tenha RECEIVE permissão para a fila e UPDATE permissão para uma tabela específica. Você projeta seu aplicativo para que, em cada estágio, o contexto de segurança do aplicativo não tenha permissão para executar operações inesperadas.
Aplicativos que enviam mensagens entre instâncias do SQL Server podem usar segurança de transporte, segurança de caixa de diálogo ou ambos. A segurança de transporte e a segurança de diálogo fornecem proteções claramente diferentes.
A segurança de diálogo do Service Broker fornece criptografia de ponta a ponta e autorização para conversas entre serviços específicos. Portanto, a segurança de diálogo ajuda a proteger os dados contra a inspeção ou modificação em trânsito. Os aplicativos que transmitem dados confidenciais ou importantes ou que transmitem mensagens por redes não confiáveis devem usar a segurança de diálogo. A segurança de diálogo pode ajudar um participante a identificar o outro participante na conversa.
Como a segurança de diálogo se aplica a serviços específicos, você deve configurar a segurança de diálogo para cada serviço que a utiliza. No entanto, uma instância pode usar a segurança da caixa de diálogo para algumas conversas e permitir que outras conversas sejam transmitidas sem criptografia. Por exemplo, conversas com um serviço que atualiza informações do cliente podem usar a segurança de diálogo, enquanto conversas que simplesmente pesquisam informações de número de peça podem não exigir segurança de diálogo.
O Service Broker usa associações de serviço remoto no banco de dados que iniciam a conversa para determinar a segurança da conversa. O Service Broker, portanto, usa o nome de serviço para determinar a segurança para esse serviço. Em casos em que houver mais de uma instância do mesmo serviço de destino, o roteamento dos serviços sendo iniciados deve ser cuidadosamente gerenciado de modo que estes apenas se comuniquem com os serviços de destino que contêm certificados correspondentes. Todos os serviços com o mesmo nome devem ser configurados com o mesmo certificado.
A segurança de transporte do Service Broker evita conexões de rede não autorizadas com os pontos de extremidade do Service Broker, detecta alterações em mensagens em trânsito e, opcionalmente, fornece a criptografia de ponta a ponta. Isso ajuda a proteger seu banco de dados de recebimento de mensagens não desejadas. Como a segurança de transporte se aplica a conexões de rede, ela automaticamente se aplica também a todas as conversas entre as instâncias do SQL Server. No entanto, a segurança de transporte não fornece criptografia de ponta a ponta e não fornece autenticação para conversas individuais.
Manter a segurança
Manter a segurança para aplicativos do Service Broker consiste em duas tarefas principais: auditar a configuração do aplicativo e substituir os certificados que o aplicativo usa.
Audite periodicamente o aplicativo para determinar se a configuração de segurança está inalterada e que a configuração de segurança atende às necessidades de negócios do aplicativo.
A segurança de diálogo confia em certificados para autenticação e criptografia. A segurança de transporte também pode usar certificados. Um certificado possui um tempo de duração durante o qual é válido. O certificado não é válido antes do início desta hora ou após a expiração desta hora. O Service Broker não usa certificados que não são válidos no momento. Além disso, o SQL Server inclui a opção ACTIVE FOR BEGIN_DIALOG de disponibilizar um certificado para o Service Broker. Para atualizar certificados, crie ou carregue novos certificados com a opção ativa para iniciar a caixa de diálogo definida como OFF. Depois que todos os certificados forem carregados, altere os certificados atuais em todos os bancos de dados para tornar os certificados indisponíveis para o Service Broker e altere os novos certificados definindo a opção ACTIVE FOR BEGIN_DIALOG para que esses certificados estejam disponíveis para o Service Broker.
Para obter mais informações sobre certificados, consulte Certificados e Service Broker e CREATE CERTIFICATE.