Protegendo contas de serviço locais
Um serviço tem uma identidade de segurança primária que determina os direitos de acesso para recursos locais e de rede. O contexto de segurança de um serviço Microsoft Win32 é determinado pela conta de serviço usada para iniciar o serviço. Você usa uma conta de serviço para:
- Identificar e autenticar um serviço.
- Iniciar um serviço com êxito.
- Acessar ou executar código ou um aplicativo.
- Iniciar um processo.
Tipos de contas de serviço locais
Dependendo do seu caso de uso, você pode usar uma MSA (conta de serviço gerenciado), uma conta de computador ou uma conta de usuário para executar um serviço. Primeiro, você deve testar um serviço para confirmar se ele pode usar uma conta de serviço gerenciado. Se o serviço puder usar uma MSA, você deverá usar uma.
Contas de serviço gerenciado do grupo
Para os serviços em execução no seu ambiente local, use gMSAs (contas de serviço gerenciado de grupo) sempre que possível. As gMSAs fornecem uma solução de identidade única para serviços em execução em um farm de servidores ou atrás de um balanceador de carga de rede. As gMSAs também podem ser usadas para um serviço em execução em um único servidor. Para obter informações sobre os requisitos das gMSAs, confira Introdução às contas de serviços gerenciados de grupo.
Contas de serviços gerenciados autônomas
Se você não puder usar uma gMSA, use uma sMSA (conta de serviço gerenciado autônomo). As sMSAs exigem pelo menos o Windows Server 2008 R2. Ao contrário das gMSAs, as sMSAs são executadas em apenas um servidor. Eles podem ser usados para vários serviços nesse servidor.
Contas de computador
Se você não pode usar uma MSA, considere usar uma conta de computador. A conta LocalSystem é uma conta local predefinida que tem permissões extensas no computador local e atua como a identidade do computador na rede.
Os serviços executados como conta LocalSystem acessam recursos de rede usando as credenciais da conta do computador no formato <domain_name>\<computer_name>. Seu nome predefinido é NT AUTHORITY\SYSTEM. Você pode usá-lo para iniciar um serviço e fornecer um contexto de segurança para esse serviço.
Observação
Quando você usa uma conta de computador, não pode determinar qual serviço no computador está usando essa conta. Consequentemente, você não pode auditar qual serviço está fazendo alterações.
Contas de usuário
Se você não pode usar uma MSA, considere usar uma conta de usuário. Uma conta de usuário pode ser uma conta de usuário de domínio ou uma conta de usuário local.
Uma conta de usuário de domínio permite que o serviço Aproveite ao máximo os recursos de segurança do serviço do Windows e do Microsoft Active Directory Domain Services. O serviço terá as permissões locais e de rede concedidas à conta. Ele também terá as permissões de qualquer grupo do qual a conta seja membro. As contas de serviço de domínio dão suporte à autenticação mútua Kerberos.
Uma conta de usuário local (formato de nome: .\UserName) existe apenas no banco de dados do Gerenciador de Contas de Segurança do computador host. Ele não tem um objeto de usuário nos Active Directory Domain Services. Uma conta local não pode ser autenticada pelo domínio. Portanto, um serviço executado no contexto de segurança de uma conta de usuário local não tem acesso aos recursos de rede (exceto como um usuário anônimo). Os serviços em execução no contexto de usuário local não dão suporte à autenticação mútua Kerberos na qual o serviço é autenticado por seus clientes. Por esses motivos, as contas de usuário local geralmente são inadequadas para serviços habilitados para diretório.
Importante
As contas de serviço não devem ser membros de nenhum grupo privilegiado, pois a associação ao grupo privilegiado confere permissões que podem representar um risco à segurança. Cada serviço deve ter sua própria conta de serviço para fins de auditoria e segurança.
Escolha o tipo certo de conta de serviço
Critério | gMSA | sMSA | Conta de Computador | Conta de usuário |
---|---|---|---|---|
O aplicativo é executado em um único servidor | Sim | Sim. Use uma gMSA, se possível. | Sim. Use uma MSA, se possível. | Sim. Use uma MSA, se possível. |
O aplicativo é executado em vários servidores | Sim | Não | Não. A conta está vinculada ao servidor. | Sim. Use uma MSA, se possível. |
O aplicativo é executado atrás de um balanceador de carga | Sim | Não | Não | Sim. Use somente se você não puder usar uma gMSA. |
O aplicativo é executado no Windows Server 2008 R2 | Não | Sim | Sim. Use uma MSA, se possível. | Sim. Use uma MSA, se possível. |
O aplicativo é executado no Windows Server 2012 | Sim | Sim. Use uma gMSA, se possível. | Sim. Use uma MSA, se possível. | Sim. Use uma MSA, se possível. |
Requisito para restringir a conta de serviço a um servidor único | Não | Sim | Sim. Use uma sMSA, se possível. | Não |
Usar logs de servidor e o PowerShell para investigar
Você pode usar logs de servidor para determinar em quais servidores e em quantos servidores um aplicativo está em execução.
Para obter uma lista da versão do Windows Server para todos os servidores em sua rede, você pode executar o seguinte comando do PowerShell:
Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Out-GridView
Encontre contas de serviço locais
Recomendamos que você adicione um prefixo como “svc-” a todas as contas que você usa como contas de serviço. Essa convenção de nomenclatura facilitará a localização e o gerenciamento das contas. Considere também usar um atributo de descrição para a conta de serviço e o proprietário da conta de serviço. A descrição pode ser um alias de equipe ou proprietário da equipe de segurança.
A localização de contas de serviço locais é fundamental para garantir sua segurança. Isso pode ser difícil para contas não MSA. Recomendamos que você revise todas as contas que têm acesso aos seus recursos locais importantes e que determine quais contas de computador ou de usuário podem estar agindo como contas de serviço.
Para saber como encontrar uma conta de serviço, confira o artigo sobre esse tipo de conta na seção "Próximas etapas".
Contas de serviço de documento
Depois de encontrar as contas de serviço em seu ambiente local, documente as seguintes informações:
Proprietário: a pessoa responsável por manter a conta.
Finalidade: o aplicativo que a conta representa, ou outra finalidade.
Escopos de permissões: as permissões que tem ou deveria ter, e quaisquer grupos dos quais seja membro.
Perfil de risco: o risco para sua empresa se essa conta for comprometida. Se o risco for alto, use uma MSA.
Tempo de vida previsto e atestado periódico: quanto tempo você prevê que essa conta estará ativa e com que frequência o proprietário deve revisar e atestar sua necessidade contínua.
Segurança com senha: para contas de computador local e de usuário, onde a senha é armazenada. Certifique-se de que as senhas sejam mantidas seguras e documente quem tem acesso. Considere o uso de Privileged Identity Management para proteger senhas armazenadas.
Próximas etapas
Para saber mais sobre contas de serviço de segurança, confira os seguintes artigos: