Partilhar via


Configurar o suporte a transações WS-Atomic

Este tópico descreve como você pode configurar o suporte a WS-AtomicTransaction (WS-AT) usando o Utilitário de Configuração WS-AT.

Use o utilitário de configuração WS-AT

O Utilitário de Configuração WS-AT (wsatConfig.exe) é usado para definir as configurações do WS-AT. Para habilitar o serviço de protocolo WS-AT, você deve usar o utilitário de configuração para configurar a porta HTTPS para WS-AT, vincular um certificado X.509 à porta HTTPS e configurar certificados de parceiros autorizados especificando nomes de assunto de certificado ou impressões digitais. O utilitário de configuração também permite que você selecione o modo de rastreamento e defina os tempos limite de transação de entrada e saída padrão.

Você pode acessar a funcionalidade dessa ferramenta usando um snap-in de página de propriedades do MMC (Console de Gerenciamento Microsoft) no console de gerenciamento dos Serviços de Componentes ou em uma janela de linha de comando. Configure o suporte WS-AT na máquina local através da janela de linha de comando; defina as configurações em máquinas locais e remotas usando o snap-in do MMC.

A janela de linha de comando pode ser acessada no local de instalação do SDK do Windows "%WINDIR%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation".

Para obter mais informações sobre a ferramenta de linha de comando, consulte WS-AtomicTransaction Configuration Utility (wsatConfig.exe).

Se você estiver executando o Windows XP ou o Windows Server 2003, poderá acessar o snap-in do MMC navegando até Painel de Controle/Ferramentas Administrativas/Serviços de Componentes, clicando com o botão direito do mouse em Meu Computador e selecionando Propriedades. Este é o mesmo local onde você pode configurar o Microsoft Distributed Transaction Coordinator (MSDTC). As opções disponíveis para configuração são agrupadas na guia WS-AT . Se você estiver executando o Windows Vista ou o Windows Server 2008, o snap-in do MMC poderá ser encontrado clicando no botão Iniciar e digitando dcomcnfg.exe na caixa Pesquisar . Quando o MMC for aberto, navegue até o nó Meu Computador\Coordenador de Transações Distribuídas\DTC Local, clique com o botão direito do mouse e selecione Propriedades. As opções disponíveis para configuração são agrupadas na guia WS-AT .

Para obter mais informações sobre o snap-in, consulte o snap-in WS-AtomicTransaction Configuration MMC.

Para habilitar a interface do usuário da ferramenta, você deve primeiro registrar o arquivo WsatUI.dll, localizado no seguinte caminho

%PROGRAMFILES%\Microsoft SDKs\Windows\v6.0\Bin

Para registrar o produto, execute o seguinte comando em uma janela do prompt de comando:

regasm.exe /codebase WsatUI.dll

Ativar WS-AT

Para habilitar o serviço de protocolo WS-AT dentro do MSDTC usando a porta 443 e um certificado X.509 com uma chave privada que foi instalada no armazenamento da máquina local, use a ferramenta wsatConfig.exe com o seguinte comando.

WsatConfig.exe –network:enable –port:8443 –endpointCert:<machine|"Issuer\SubjectName"> -accountsCerts:<thumbprint|"Issuer\SubjectName"> -restart

Substitua os respetivos parâmetros por valores relevantes para o seu ambiente.

Para desativar o serviço de protocolo WS-AT dentro do MSDTC, use a ferramenta wsatConfig.exe com o seguinte comando.

WsatConfig.exe –network:disable -restart

Configurar a confiança entre duas máquinas

O serviço de protocolo WS-AT requer que o administrador autorize explicitamente contas individuais a participar de transações distribuídas. Se você for um administrador de duas máquinas, poderá configurar ambas as máquinas para estabelecer uma relação de confiança mútua trocando o conjunto correto de certificados entre as máquinas, instalando-as nos armazenamentos de certificados apropriados e usando a ferramenta wsatConfig.exe para adicionar o certificado de cada máquina à lista de certificados de participantes autorizados da outra. Esta etapa é necessária para executar transações distribuídas entre duas máquinas usando WS-AT.

No exemplo a seguir, descrevemos as etapas para estabelecer confiança entre duas máquinas, A e B.

Criar e exportar certificados

Este procedimento requer o snap-in Certificados MMC. O snap-in pode ser acessado abrindo o menu Iniciar/Executar, digitando "mmc" na caixa de entrada e pressionando OK. Em seguida, na janela Console1 , navegue até o snap-in Arquivo/Adicionar-Remover , clique em Adicionar e escolha Certificados na lista Snapins autônomos disponíveis. Por fim, selecione Conta de computador para gerenciar e clique em OK. O nó Certificados aparece no console do snap-in.

Você já deve possuir os certificados necessários para estabelecer confiança. Para saber como criar e instalar novos certificados antes das etapas a seguir, consulte Como criar e instalar certificados de cliente temporários no WCF durante o desenvolvimento.

  1. Na máquina A, usando o snap-in Certificados MMC, importe o certificado existente (certA) para o armazenamento LocalMachine\MY (nó pessoal) e LocalMachine\ROOT (nó de autoridade de certificação raiz confiável). Para importar um certificado para um nó específico, clique com o botão direito do mouse no nó e escolha Todas as tarefas/Importar.

  2. Na máquina B, usando o snap-in Certificados MMC, crie ou obtenha um certificado certB com uma chave privada e importe-o para o armazenamento LocalMachine\MY (nó pessoal) e LocalMachine\ROOT (nó de autoridade de certificação raiz confiável).

  3. Exporte a chave pública do certA para um arquivo se isso ainda não tiver sido feito.

  4. Exporte a chave pública do certB para um arquivo se isso ainda não tiver sido feito.

Estabelecer confiança mútua entre máquinas

  1. Na máquina A, importe a representação de arquivo de certB para os armazenamentos LocalMachine\MY e LocalMachine\ROOT. Isso declara que a máquina A confia no certB para se comunicar com ela.

  2. Na máquina B, importe o arquivo certA para os armazenamentos LocalMachine\MY e LocalMachine\ROOT. Isso implica que a máquina B confia no certA para se comunicar com ela.

Depois de concluir essas etapas, a confiança é estabelecida entre as duas máquinas e elas podem ser configuradas para se comunicar entre si usando o WS-AT.

Configurar o MSDTC para usar certificados

Como o serviço de protocolo WS-AT atua como um cliente e um servidor, ele deve escutar conexões de entrada e iniciar conexões de saída. Portanto, você precisa configurar o MSDTC para que ele saiba qual certificado usar ao se comunicar com terceiros e quais certificados autorizar ao aceitar comunicação de entrada.

Você pode configurar isso usando o snap-in MMC WS-AT. Para obter mais informações sobre essa ferramenta, consulte o tópico WS-AtomicTransaction Configuration MMC Snap-in . As etapas a seguir descrevem como estabelecer confiança entre dois computadores que executam o MSDTC.

  1. Configure as configurações da máquina A. Para "Endpoint Certificate", selecione certA. Em "Certificados autorizados", selecione o certB.

  2. Configure as configurações da máquina B. Para "Endpoint Certificate", selecione certB. Em "Certificados Autorizados", selecione o certA.

Nota

Quando uma máquina envia uma mensagem para a outra máquina, o remetente tenta verificar se o nome do assunto do certificado do destinatário e o nome da máquina do destinatário correspondem. Se não corresponderem, a verificação do certificado falha e as duas máquinas não podem se comunicar.

Para uma máquina associada a um domínio, o nome é o nome de domínio totalmente qualificado. Por padrão, o nome de uma máquina em um grupo de trabalho é o nome NetBIOS da máquina. No entanto, o nome também pode incluir um sufixo DNS (Sistema de Nomes de Domínio) se houver um para a conexão que está sendo usada entre as duas máquinas.

Se o nome da máquina mudar, por exemplo, quando uma máquina de grupo de trabalho ingressar em um domínio, você deverá reemitir certificados ou configurar manualmente sufixos DNS.

Segurança

Como algumas das configurações relacionadas ao MSDTC e WS-AT são armazenadas no Registro em HKLM\Software\Microsoft\MSDTC e em HKLM\Software\Microsoft\WSAT, respectivamente, certifique-se de que essas chaves do Registro estejam protegidas para que apenas os administradores possam gravar nelas. Na ferramenta Editor do Registro, clique com o botão direito do mouse na chave que deseja proteger e selecione Permissão para definir o controle de acesso apropriado. É crucial para a segurança e integridade do sistema que chaves importantes sejam somente leitura para usuários com privilégios baixos.

Ao implantar o MSDTC, o administrador deve garantir que qualquer intercâmbio de dados do MSDTC seja seguro. Em uma implantação de grupo de trabalho, isole a infraestrutura transacional de usuários mal-intencionados; Em uma implantação de cluster, proteja o registro do cluster.

Rastreio

O serviço de protocolo WS-AT suporta rastreamento integrado e específico de transação que pode ser habilitado e gerenciado por meio do uso da ferramenta WS-AtomicTransaction Configuration MMC Snap-in . Os rastreamentos podem incluir dados que indicam o momento em que um alistamento é feito para uma transação específica, o momento em que uma transação atinge seu estado terminal, o resultado que cada alistamento de transação recebeu. Todos os rastreamentos podem ser visualizados usando a ferramenta Service Trace Viewer Tool (SvcTraceViewer.exe ).

O serviço de protocolo WS-AT também oferece suporte ao rastreamento ServiceModel integrado por meio da sessão de rastreamento ETW. Isso fornece rastreamentos mais detalhados e específicos de comunicação, além dos rastreamentos de transação existentes. Para habilitar esses rastreamentos adicionais, siga estas etapas

  1. Abra o menu Iniciar/Executar, digite "regedit" na caixa de entrada e selecione OK.

  2. No Editor do Registro, navegue até a seguinte pasta no painel esquerdo, Hkey_Local_Machine\SOFTWARE\Microsoft\WSAT\3.0\

  3. Clique com o botão direito do ServiceModelDiagnosticTracing mouse no valor no painel direito e selecione Modificar.

  4. Na caixa Entrada de dados do valor, insira um dos seguintes valores válidos para especificar o nível de rastreamento que você deseja habilitar.

  • 0: desligado

  • 1: crítica

  • 3: erro. Este é o valor padrão

  • 7: Advertência

  • 15: informação

  • 31: Verborrágico

Consulte também