Artigo: 892199 - Última revisão: terça-feira, 29 de Dezembro de 2009 - Revisão: 12.1

Determinados Modelos Administrativos do Windows XP Security Guide podem impedir a inicialização do serviço 'Firewall do Windows' no Windows XP Service Pack 2

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Importante
Este artigo destina-se a utilizadores avançados. Se não estiver familiarizado com operações avançadas de resolução de problemas, poderá pretender contactar alguém para o ajudar ou contactar o suporte técnico. Para obter informações sobre como fazê-lo, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus (http://support.microsoft.com/contactus/)

Nesta página

Expandir tudo | Reduzir tudo

Sintomas

Depois de instalar o Windows XP Service Pack 2 (SP2), não consegue iniciar o serviço 'Firewall do Windows'. Poderá detectar um ou mais dos seguintes sintomas:
  • Quando clica em Firewall do Windows no Painel de controlo, poderá receber a seguinte mensagem de erro:
    As definições do Firewall do Windows não podem ser apresentadas porque não está em execução o serviço associado. Pretende iniciar o serviço Firewall do Windows/Partilha de ligação à Internet (ICS)?
    Se clicar em Sim, receberá a seguinte mensagem de erro:
    O Windows não pode iniciar o serviço Firewall do Windows/Partilha de ligação à Internet (ICS).
  • Se tentar iniciar manualmente o serviço Firewall do Windows utilizando Serviços, poderá receber a seguinte mensagem de erro:
    Não foi possível iniciar o serviço Firewall do Windows/Partilha de ligação à Internet (ICS) em Computador local.
    Erro 0x80004015: A classe está configurada para execução com uma identificação de segurança distinta do emissor
    Nota: para abrir os Serviços, clique em Iniciar, clique em Painel de controlo, faça duplo clique em Ferramentas administrativas e faça duplo clique em Serviços. Para obter informações sobre como utilizar os Serviços, no menu Acção de Serviços, clique em Ajuda.
  • Poderão ser apresentados os seguintes eventos no registo de eventos do sistema:

    ID do evento: 7036
    Origem do evento: Service Control Manager
    Tipo de evento: Informações
    Categoria do evento: Nenhuma
    Descrição:
    O serviço Firewall do Windows/Partilha de ligação à Internet (ICS) entrou no estado pausado.

    ID do evento: 7023
    Origem: Service Control Manager
    Tipo: Erro (Error)
    Descrição:
    O serviço Firewall do Windows/Partilha de ligação à Internet (ICS) terminou com o seguinte erro:
    A classe está configurada para execução com uma identificação de segurança distinta do emissor

  • Quando utiliza o comando de consulta SC para determinar o estado do serviço Firewall do Windows/Partilha de ligação à Internet (ICS), é apresentado o seguinte resultado:
    C:\>sc query sharedaccess SERVICE_NAME: sharedaccess TYPE : 20  WIN32_SHARE_PROCESS STATE              : 1 STOPPED (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) WIN32_EXIT_CODE : -2147467243 (0x80004015) SERVICE_EXIT_CODE : 0  (0x0) CHECKPOINT         : 0x0 WAIT_HINT          : 0x0
  • Se tentar iniciar o serviço Firewall do Windows/Partilha de ligação à Internet (ICS) a partir da linha de comandos utilizando o comando net start sharedaccess, será apresentado o seguinte resultado:
    C:\>net start sharedaccess O serviço Firewall do Windows/Partilha de ligação à Internet (ICS) está a iniciar. Não foi possível iniciar o serviço Firewall do Windows/Partilha de ligação à Internet (ICS). Ocorreu um erro de sistema. Ocorreu o erro de sistema 16405. O sistema não pode encontrar o texto correspondente na mensagem de número 0x4015 no ficheiro de mensagens para BASE.
Nota: a funcionalidade Firewall do Windows do Windows XP SP2 é um substituto do Firewall de ligação à Internet (ICF, Internet Connection Firewall) de versões anteriores do Windows XP.

Causa

Este problema pode ocorrer se determinados modelos administrativos do Windows XP Security Guide tiverem sido aplicados ao computador antes da instalação do Windows XP SP2. Esta situação ocorre devido a um problema em alguns modelos de segurança que foram disponibilizados como parte do Windows XP Security Guide.

No Windows XP SP2, a chamada de procedimento remoto (RPC, remote procedure call) é executada com a conta Authority\NetworkService do NT. O descritor de segurança predefinido para os serviços no Windows XP SP2 permite o acesso de leitura ao grupo Utilizadores Autenticados. Isto inclui a conta Authority\NetworkService do NT.

Resolução

Utilizadores avançados

Estes métodos destinam-se a utilizadores avançados. Se não estiver familiarizado com operações avançadas de resolução, poderá pretender contactar alguém para o ajudar ou contactar o suporte técnico. Para obter informações sobre como contactar o suporte, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus (http://support.microsoft.com/contactus)


Para resolver este problema, utilize um dos seguintes métodos:

Método 1: Restaurar o descritor de segurança predefinido do serviço SharedAccess

O serviço que controla o serviço Firewall do Windows/Partilha de ligação à Internet (ICS) é designado por SharedAccess. O descritor de segurança (SD, security descriptor) predefinido concede acesso de leitura a LocalSystem (SY), utilizadores avançados (PU) e utilizadores autenticados (AU), e controlo total a administradores (BA).

Para ver o SD de SharedAccess, escreva SC sdshow SharedAccess na linha de comandos e prima ENTER. O SD predefinido aparece e é semelhante ao seguinte:
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
Nota: para obter mais informações sobre como interpretar as cadeias de caracteres, visite o seguinte Web site da MSDN e procure SDDL ou "ACE strings":
http://msdn.microsoft.com/pt-pt/library/aa374928(VS.85).aspx (http://msdn.microsoft.com/pt-pt/library/aa374928(VS.85).aspx)
Nota: para abrir a linha de comandos, clique em Iniciar, em Executar, na caixa Abrir, escreva CMD e, em seguida, clique em OK.
Se vir qualquer outro resultado que não o ilustrado neste exemplo, pode repor o SD utilizando o comando SC com a opção sdset. Para restaurar o SD predefinido para o serviço SharedAccess, escreva o seguinte comando na linha de comandos e prima ENTER:
SC sdset SharedAccess D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
Para obter mais informações sobre o comando SC sdset, consulte a ajuda do Windows.

Método 2: Restaurar o SD predefinido para os serviços SharedAccess

Importante: esta secção, método ou tarefa contém passos que explicam como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo de forma incorrecta. Assim, certifique-se de que segue estes passos cuidadosamente. Para uma maior segurança, efectue uma cópia de segurança do registo antes de o modificar. Deste modo, pode restaurar o registo se ocorrer um problema. Para mais informações sobre como efectuar uma cópia de segurança e restaurar o registo, clique no número de artigo que se segue para visualizar o artigo na Base de Dados de Conhecimento da Microsoft:
322756  (http://support.microsoft.com/kb/322756/ ) Como criar uma cópia de segurança e restaurar o registo no Windows


Para restaurar o SD predefinido para os serviços SharedAccess, siga estes passos:
  1. Clique em Iniciar, clique em Executar, na caixa Abrir, escreva regedit e clique em OK.
  2. Localize e clique na seguinte subchave do registo:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Security
  3. Elimine a subchave de registo Security, se existir.
  4. Saia do Editor de Registo e reinicie o computador.
Nota: é importante eliminar a subchave de registo Security se ela existir. Isto garante que o descritor de segurança predefinido será utilizado para iniciar o Firewall do Windows quando o computador for reiniciado.

Se executar aplicações Microsoft Component Object Model (COM), DCOM ou Microsoft COM+ para controlar o serviço Firewall do Windows, terá de seguir também os seguintes passos:
  1. Clique em Iniciar, clique em Executar, na caixa Abrir, escreva regedit e clique em OK.
  2. Localize e clique na seguinte subchave do registo:
    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180}
  3. No menu Ficheiro, clique em Exportar.
  4. Na caixa Nome do ficheiro, escreva C:\reg_AppID_CLSID.reg e clique em Guardar para guardar o ficheiro de registo.
  5. Elimine a subchave de registo {ce166e40-1e72-45b9-94c9-3b2050e8f180}.
  6. Clique em OK e saia do Editor de Registo.
  7. Inicie o serviço Firewall do Windows/Partilha de ligação à Internet (ICS). Para o fazer, escreva NET START SharedAccess na linha de comandos e prima ENTER:
Nota: é possível executar todos estes passos numa linha de comandos. Para o fazer, siga estes passos:
  1. Escreva os seguintes comandos e prima ENTER após cada comando:
    REG DELETE HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Security /f
    REG DELETE HKLM\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180} /f
    A eliminação da subchave do registo {ce166e40-1e72-45b9-94c9-3b2050e8f180} é um passo importante. Este passo garante a aplicação do descritor de segurança predefinido do momento da reimportação.
  2. Reinicie o computador.

Ponto Da Situação

A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informação

Para obter mais informações sobre o Firewall do Windows do Windows XP SP2, visite o seguinte Web site da Microsoft:
http://technet.microsoft.com/pt-pt/library/bb457029.aspx (http://technet.microsoft.com/pt-pt/library/bb457029.aspx)
Para obter mais informações sobre o Windows XP Security Guide, visite o seguinte Web site da Microsoft:
http://technet.microsoft.com/pt-pt/library/cc163076.aspx (http://technet.microsoft.com/pt-pt/library/cc163076.aspx)

O utilitário SC.exe (Controlador de serviços)

O utilitário SC.exe comunica com o Controlador de serviços e com os serviços instalados. O SC.exe obtém e define informações de controlo sobre os serviços. Pode utilizar o SC.exe para testar e depurar programas de serviços. As propriedades de serviços que se encontram armazenadas no registo podem ser definidas para controlar o modo como as aplicações de serviços são iniciadas quando liga o computador e o modo como são executadas como processos de segundo plano. Os parâmetros do SC.exe podem configurar um serviço específico, obter o estado actual de um serviço e parar e iniciar um serviço. Pode criar ficheiros batch que invoquem vários comandos SC.exe para automatizar a sequência de arranque ou encerramento de serviços. O SC.exe fornece capacidades semelhantes à ferramenta Serviços do item Ferramentas administrativas do Painel de controlo.

Para obter mais informações sobre o utilitário SC.exe, visite o seguinte Web site da Microsoft:
http://technet.microsoft.com/pt-pt/library/cc772676(WS.10).aspx (http://technet.microsoft.com/pt-pt/library/cc772676(WS.10).aspx)

Modelos de segurança

Para obter mais informações sobre modelos de segurança, consulte "Data Security and Data Availability for End Systems" no seguinte Web site da Microsoft:
http://technet.microsoft.com/en-us/library/bb457029.aspx (http://technet.microsoft.com/pt-pt/library/cc722919.aspx)
Para obter mais informações sobre o Windows XP Security Guide v2, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/downloads/details.aspx?FamilyId=2D3E25BC-F434-4CC6-A5A7-09A8A229F118&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyId=2D3E25BC-F434-4CC6-A5A7-09A8A229F118&displaylang=en)
Pode criar e definir modelos de segurança utilizando o snap-in Modelos de segurança. Para o fazer, siga estes passos:
  1. Clique em Iniciar, clique em Executar, escreva mmc e clique em OK.
  2. Na janela Consola1, no menu Ficheiro, clique em Adicionar/remover snap-in.
  3. Na caixa de diálogo Adicionar/remover snap-in, clique em Adicionar.
  4. Na caixa de diálogo Adicionar snap-in autónomo, clique em Modelos de segurança, clique em Adicionar e clique em Fechar.
  5. Na caixa de diálogo Adicionar/remover snap-in, clique em OK.
  6. Na janela Consola1, expanda o nó Modelos de segurança. Em seguida, expanda o nó \system_root\Security\Templates para ver uma lista dos modelos disponíveis.
  7. Expanda o nó \system_root\Security\Templates\securews\, clique em Serviços de sistema e faça duplo clique em Firewall do Windows/Partilha de ligação à Internet (ICS) para definir esta política no modelo.

Atribuir permissões através de programação

Para obter informações sobre como atribuir permissões através de programação à entrada de registo LaunchPermission ou AccessPermission, visite o seguinte Web site da MSDN para obter o exemplo DCOMperm: Permissions for a COM Server code:
http://msdn.microsoft.com/pt-pt/library/aa242178(VS.60).aspx (http://msdn.microsoft.com/pt-pt/library/aa242178(VS.60).aspx)
A entrada de registo AccessPermission define uma lista de controlo de acesso discricionário (DACL, discretionary access control list) que determina o acesso. A entrada de registo LaunchPermission define uma DACL que determina quem pode iniciar a aplicação.

A entrada de registo LaunchPermission é REG_BINARY. Na recepção de um pedido local ou remoto para iniciar o servidor desta classe, a DACL descrita por este valor é verificada fazendo-se passar pelo cliente. O êxito desta verificação activa ou desactiva o início do servidor. Se este valor não existir, como predefinição, a entrada DefaultLaunchPermission global do computador é verificada do mesmo modo para determinar se o código da classe pode ser iniciado.

O valor de registo AccessPermission é REG_BINARY. Contem dados que descrevem a DACL dos principais que podem aceder a instâncias desta classe. Na recepção de um pedido de ligação a um objecto existente desta classe, a DACL é verificada pela aplicação invocada fazendo-se passar pelo invocador. Se a verificação de acesso falhar, a ligação não é activada. Se este valor não existir, como predefinição, a DACL DefaultAccessPermission global do computador é testada da mesma forma para determinar se a ligação é activada.

Ver as definições de permissão do serviço na GUI DCOMcnfg

Para ver as definições de permissão do serviço na interface gráfica do utilizador (GUI, graphical user interface) DCOMcnfg, siga estes passos:
  1. Clique em Iniciar, clique em Executar, na caixa Abrir, escreva DCOMCNFG e clique em OK.
  2. Expanda os seguintes nós:
    Serviços componentes
    Computadores
    O meu computador
    Configuração do DCOM
  3. Clique com o botão direito do rato em SharedAccess e clique em Propriedades.
  4. Clique no separador Geral e certifique-se de que as seguintes definições estão configuradas:
    Nome da aplicação: SharedAccess
    ID da aplicação: {ce166e40-1e72-45b9-94c9-3b2050e8f180}
    Tipo de aplicação: Serviço local
    Nível de autenticação: Predefinição
    Nome do serviço: SharedAccess
  5. Clique no separador Identidade e certifique-se de que A conta de sistema (apenas serviços) está seleccionada.
  6. Clique no separador Segurança.
  7. Na área Permissões de lançamento e activação, clique em Personalizar e clique em Editar.
  8. Na caixa Nomes de grupo ou de utilizador, clique em Administradores (NOME_COMPUTADOR\Administradores). Certifique-se de que a caixa de verificação Activação local da coluna Permitir está seleccionada e clique em OK.
  9. Na área Permissões de acesso, clique em Personalizar e clique em Editar. Certifique-se de que as seguintes definições estão configuradas:
    • Na caixa Nomes de grupo ou de utilizador, clique em Administradores (NOME_COMPUTADOR\Administradores). Em seguida, certifique-se de que a caixa de verificação Acesso local da coluna Permitir está seleccionada. Clique em OK.
  10. Na área Permissões de configuração, clique em Personalizar e clique em Editar. Certifique-se de que as seguintes definições estão configuradas:
    • Na caixa Nomes de grupo ou de utilizador, clique em Administradores (NOME_COMPUTADOR\Administradores). Em seguida, certifique-se de que a caixa de verificação Controlo total e a caixa de verificação Leitura da coluna Permitir estão seleccionadas.
    • Na caixa Nomes de grupo ou de utilizador, clique em Utilizadores avançados. Em seguida, certifique-se de que a caixa de verificação Leitura da coluna Permitir está seleccionada.
    • Na caixa Nomes de grupo ou de utilizador, clique em SYSTEM. Em seguida, certifique-se de que a caixa de verificação Controlo total e a caixa de verificação Leitura da coluna Permitir estão seleccionadas.
    • Na caixa Nomes de grupo ou de utilizador, clique em Utilizadores. Em seguida, certifique-se de que a caixa de verificação Leitura da coluna Permitir está seleccionada. Clique em OK duas vezes.

Exemplo de resultados do registo

Para exportar o conteúdo da entrada do registo, escreva o seguinte comando na linha de comandos e prima ENTER:
REG EXPORT HKLM\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180} C:\reg_AppID_CLSID.txt
O ficheiro resultante, C:\reg_AppID_CLSID.txt, conterá texto semelhante ao seguinte:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180}] @="SharedAccess" "LocalService"="SharedAccess" "AccessPermission"=hex:01,00,14,80,34,00,00,00,50,00,00,00,00,00,00,00,14,00,\ 00,00,02,00,20,00,01,00,00,00,00,00,18,00,03,00,00,00,01,02,00,00,00,00,00,\ 05,20,00,00,00,20,02,00,00,01,05,00,00,00,00,00,05,15,00,00,00,59,51,b8,17,\ 66,72,5d,25,64,63,3b,0b,7f,a9,28,00,01,05,00,00,00,00,00,05,15,00,00,00,59,\ 51,b8,17,66,72,5d,25,64,63,3b,0b,7f,a9,28,00 "LaunchPermission"=hex:01,00,04,80,34,00,00,00,50,00,00,00,00,00,00,00,14,00,\ 00,00,02,00,20,00,01,00,00,00,00,00,18,00,09,00,00,00,01,02,00,00,00,00,00,\ 05,20,00,00,00,20,02,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,5f,84,1f,\ 5e,2e,6b,49,ce,12,03,03,f4,01,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,\ 5f,84,1f,5e,2e,6b,49,ce,12,03,03,f4,01,00,00
Um ficheiro resultante semelhante para a subchave de registo
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess
conterá texto semelhante ao seguinte:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess] "DependOnGroup"=hex(7):00,00 "DependOnService"=hex(7):4e,00,65,00,74,00,6d,00,61,00,6e,00,00,00,57,00,69,00,\ 6e,00,4d,00,67,00,6d,00,74,00,00,00,00,00 "Description"="Fornece conversão de endereços de rede, endereçamento, resolução de nomes e/ou serviços de prevenção de intrusões para uma rede de pequeno escritório ou doméstica." "DisplayName"="Firewall do Windows/Partilha de ligação à Internet (ICS)" "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\ 6b,00,20,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "ObjectName"="LocalSystem" "Start"=dword:00000002 "Type"=dword:00000020

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Epoch] "Epoch"=dword:0000073e

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Parameters] "ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\ 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\ 69,00,70,00,6e,00,61,00,74,00,68,00,6c,00,70,00,2e,00,64,00,6c,00,6c,00,00,\ 00

[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\SharedAccess\Enum] "0"="Root\\LEGACY_SHAREDACCESS\\0000" "Count"=dword:00000001 "NextInstance"=dword:00000001

Referências

828758  (http://support.microsoft.com/kb/828758/ ) Disponibilidade do pacote 6 do conjunto de correcções Windows XP COM+ 1.5
875357  (http://support.microsoft.com/kb/875357/ ) Resolver problemas relacionados com definições do 'Firewall do Windows' no Windows XP Service Pack 2
892504  (http://support.microsoft.com/kb/892504/ ) O serviço Firewall do Windows no Windows XP Service Pack 2, no Windows XP Professional x64 Edition, no Windows Server 2003 S892504 e nas versões baseadas em x64 do Windows Server 2003 não é inicializado se o serviço de iniciação do processo DCOM estiver desactivado
920074   (http://support.microsoft.com/kb/920074/ ) Não consegue iniciar o serviço 'Firewall do Windows' no Windows XP SP2
Se os artigos listados acima não ajudarem a resolver o problema ou se detectar sintomas diferentes dos descritos neste artigo, procure mais informações na Base de Dados de Conhecimento da Microsoft. Para efectuar procuras na Base de Dados de Conhecimento da Microsoft, visite o seguinte Web site da Microsoft:
http://support.microsoft.com (http://support.microsoft.com/)
Em seguida, escreva o texto da mensagem de erro recebida ou escreva uma descrição do problema no campo Pesquisar suporte (KB).

Documentação do Microsoft Windows XP Professional MSDN Windows XP Professional SP2 no Web site da Microsoft

A informação contida neste artigo aplica-se a:
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
Palavras-chave: 
kbresolve kbtshoot kberrmsg KB892199