Contas de serviço LastLogonTimestamp

5

Em um domínio do Active Directory, se eu configurar um serviço do Windows em um computador membro do domínio para iniciar com uma conta de usuário AD (também conhecida como "ye olde service account") e o serviço continuar em execução, mas não reiniciar o serviço ou reinicialize a máquina por um ano ... o LastLogonTimestamp do objeto de usuário da conta de serviço continua sendo atualizado?

Edit: Se você disser "depende do serviço", use o MS SQL Server como exemplo. Eu defino o MSSQL Engine para ser executado como contoso \ sql-service. Então eu deixo sozinho por um ano.

    
por Ryan Ries 03.06.2014 / 17:54

2 respostas

1

Eu configurei um ambiente para executar essa experiência. Consiste em um Active Directory, com o MSDS-LogonTimeSyncInterval configurado para 1 dia. Em seguida, instalei uma instância do MS SQL em outro servidor associado a um domínio e criei uma nova conta de domínio para usar como a conta do serviço SQL. O SQL começou em 9 de junho, o que, é claro, quando o SQL foi iniciado, a conta de serviço foi conectada ao domínio pela primeira vez também. O LastLogonDate da conta de serviço ainda não foi atualizado a partir de seu valor inicial de 9 de junho, e estou esperando que ele nunca seja ... até que o SQL seja reiniciado.

A ideia por trás disso era se eu estivesse procurando por contas de usuário "inativas" que precisassem ser desabilitadas, contando apenas com o LastLogonDate do usuário, poderia lhe fornecer algumas contas de serviço que ainda estão sendo usadas ativamente, mas usadas para executar serviços que não foram reiniciados em muito tempo.

    
por 12.06.2014 / 01:09
3

Após algumas pesquisas:

O LastLogonTimestamp é atualizado com os seguintes tipos de logon: Logons interativos, de rede e de serviço.

No entanto, o atributo não é atualizado com CADA início de sessão ...

Existe outro atributo ms-DS-Logon-Time-Sync que controla com que frequência [em dias] o atributo LastLogonTimestamp é atualizado. O valor padrão é de 14 dias e é definido no código, portanto, se você observar o valor em ADSIEdit, não o verá definido.

Portanto, a decisão de atualizar LastLogonTimestamp é baseada na data atual, menos o valor de ms-DS-Logon-Time-Sync menos uma porcentagem aleatória (de 5). Se o resultado for igual ou maior que LastLogonTimestamp , o atributo será atualizado e replicado para outros DCs.

Processo:

Passo a passo de uma atualização lastLogontimeStampUpdate

  1. (Assumindo que o valor de ms-DS-Logon-Time-Sync-Interval esteja no padrão de 14)
  2. O usuário faz login no domínio
  3. O valor do atributo lastLogontimeStamp do usuário é recuperado
  4. 14 - (Porcentagem aleatória de 5) = X
  5. Data atual - valor de lastLogontimeStamp = Y
  6. X ≤ Y - atualiza lastLognTimeStamp
  7. X > Y - não atualiza lastLogontimeStamp

A maior parte foi encontrada no seguinte artigo do blog da equipe do Microsoft Directory Services: O Atributo LastLogonTimeStamp" - "Para o que foi projetado e como funciona"

Então, sim, você deve ver a atualização do atributo, mas apenas com base no tempo descrito acima.

    
por 03.06.2014 / 18:08