mirror of
https://github.com/Icinga/icinga-powershell-framework.git
synced 2025-12-20 23:00:35 -05:00
Adds function to fetch local Icinga 2 Agent host certificate
This commit is contained in:
parent
df7be4a317
commit
9221cb050d
1 changed files with 27 additions and 0 deletions
|
|
@ -0,0 +1,27 @@
|
|||
function Get-IcingaAgentHostCertificate()
|
||||
{
|
||||
# Default for Icinga 2.8.0 and above
|
||||
[string]$CertDirectory = (Join-Path -Path $Env:ProgramData -ChildPath 'icinga2\var\lib\icinga2\certs\*');
|
||||
$FolderContent = Get-ChildItem -Path $CertDirectory -Filter '*.crt' -Exclude 'ca.crt';
|
||||
$Hostname = Get-IcingaHostname -LowerCase $TRUE;
|
||||
$CertPath = $null;
|
||||
|
||||
foreach ($certFile in $FolderContent) {
|
||||
if ($certFile.Name.Contains($Hostname)) {
|
||||
$CertPath = $certFile.FullName;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ([string]::IsNullOrEmpty($CertPath)) {
|
||||
return $null;
|
||||
}
|
||||
|
||||
$Certificate = New-Object Security.Cryptography.X509Certificates.X509Certificate2 $CertPath;
|
||||
|
||||
return @{
|
||||
'CertFile' = $CertPath;
|
||||
'Subject' = $Certificate.SubjectName;
|
||||
'Thumbprint' = $Certificate.Thumbprint;
|
||||
};
|
||||
}
|
||||
Loading…
Reference in a new issue