mirror of
https://github.com/Icinga/icinga-powershell-framework.git
synced 2026-02-03 12:19:29 -05:00
24 lines
1 KiB
PowerShell
24 lines
1 KiB
PowerShell
|
|
function New-IcingaForWindowsCertificateThreadTaskInstance()
|
||
|
|
{
|
||
|
|
$IcingaHostname = Get-IcingaHostname -ReadConstants;
|
||
|
|
|
||
|
|
while ($TRUE) {
|
||
|
|
# Check every 10 minutes if our certificate is present and update it in case it is
|
||
|
|
# missing or updates have happened
|
||
|
|
$NewIcingaForWindowsCertificate = Get-IcingaForWindowsCertificate;
|
||
|
|
|
||
|
|
if ($null -ne $NewIcingaForWindowsCertificate) {
|
||
|
|
if ($NewIcingaForWindowsCertificate.Issuer.ToLower() -eq ([string]::Format('cn={0}', $IcingaHostname).ToLower())) {
|
||
|
|
Write-IcingaEventMessage -EventId 1506 -Namespace 'Framework';
|
||
|
|
} else {
|
||
|
|
if ($Global:Icinga.Public.SSLCertificate.GetCertHashString() -ne $NewIcingaForWindowsCertificate.GetCertHashString()) {
|
||
|
|
$Global:Icinga.Public.SSLCertificate = $NewIcingaForWindowsCertificate;
|
||
|
|
Write-IcingaEventMessage -EventId 2004 -Namespace 'RESTApi';
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
Start-Sleep -Seconds (60 * 10);
|
||
|
|
}
|
||
|
|
}
|