Evento de acionamento no certificado renovado, substituído

2

Estou tentando acionar um cronograma de tarefas para iniciar um script do powershell com base em quando um novo certificado é adicionado à loja Local Computer\Personal\Certificates .

Para fins de teste, os certificados são auto-assinados, criados usando o openssl.

Conforme os certificados são gerados, não pkcs12 não acionam o evento encontrado no Microsoft-Windows-CertificateServicesClient-Lifecycle-System/Operational . do visualizador de eventos.

No entanto, os certificados pkcs12 fazem.

Alguma idéia de como obter certificados não-pkcs12 para fazer o mesmo?

    
por t0mm13b 20.07.2016 / 15:37

1 resposta

0

Que tal ter um script chamado periodicamente que grava as impressões digitais de todos os certificados existentes em um arquivo? Sempre que for executada, se for encontrada uma nova impressão digital que não esteja no arquivo, ela poderá acionar qualquer coisa que o restante do script precise fazer e atualizar o arquivo.

$file = ".\certsSeenBefore.txt"
# make sure the above file exists
If (-not (Test-Path $file)) { New-Item $file -ItemType File }

# for each cert, see if the thumbprint is in the file
Get-ChildItem Cert:\LocalMachine\My\ | foreach {
    if ((Get-Content($file)) -contains $_.Thumbprint)
    {
        # all good
    }
    else
    {
        Write-Host "Ah Ha! THere's a new cert $_.Subject"

        # Add the thumbprint to the file so it doesn't get triggered again.
        Add-Content $file -Value $_.Thumbprint

        # call whatever it is you need to do

        # ....

    }
}

Desculpas, sei que esta não é uma resposta completa, mas não tenho o suficiente para poder comentar.

    
por 25.04.2017 / 06:13