Support Board
Date/Time: Wed, 19 Mar 2025 21:51:38 +0000
Post From: The installation-package is not digitally signed.
[2022-09-30 10:27:11] |
User408639 - Posts: 70 |
P.S.: Using it in a VM I saw, that You did sign Your Exes, just not Your downloader. Can You, please, sign it as well. Setting the environment-variable "clr_SQL_DLLen_Zertifikatsfingerabdruck" to Your certificate's thumbprint "52352d23a607539180f16591bb34c1230c1f7c9f" You can just use in Your Visual-Studio-Postbuild-Step.: powershell -command "Unterschreibe-Assembly -Datenkarteienname \"$(Targetpath)\" -Verbose|ft -autosize" ________________________________________________________________________________________ filter Unterschreibe-Assembly ` { <# .Synopsis Signiert eine Assembly mit $sha1_Schluessel=$env:clr_SQL_DLLen_Zertifikatsfingerabdruck. .Description Signiert die Assembly $Datenkarteienname mit dem Schlüssel zu dem Fingerabrucke $sha1_Schluessel=$env:clr_SQL_DLLen_Zertifikatsfingerabdruck sowie dem Timestampserver $Zeitendiener. .Parameter Zeitendiener Der Timestampserver des Zertifkates. .Parameter Datenkarteienname Der Pfad der zu signierenden Assembly . .Parameter sha1_Schluessel Der Fingerabdruck des signierenden Zertifikate's . .Example powershell -command "Unterschreibe-Assembly -Datenkarteienname \"$(Targetpath)\" -Verbose|ft -autosize" #> [cmdletbinding(SupportsShouldProcess=$true) ]param( [Parameter(ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)][string]$Datenkarteienname ,[string]$Zeitendiener="http://timestamp.digicert.com",[string]$sha1_Schluessel=$env:clr_SQL_DLLen_Zertifikatsfingerabdruck,[string]$Signaturenalgorithmus="sha512" ,[string[]]$Signaturenverzeichnisse=("cert:\currentuser\my","cert:\LocalMachine\my"),[switch]$Kurz ###@@@"http://timestamp.verisign.com/scripts/timstamp.dll" ergibt keine verwendbaren Zeitenstempel mehr.: Michael Soliman.: 2019-08-04T18:29:55.5046751+02:00. );$Befehlchensname="Unterschreibe-Assembly" $PSB=$PSBoundParameters #@@@Diese Zuweisung ermöglicht das ("$PSBoundParameters")-Wertedebugging. if($PSB["Verbose"]){$v=$true}else{$v=$false} if($PSB["Kurz" ]){$K=$true}else{$K=$false} #Write-Host "Verbose=$($v),Kurz=$($Kurz)." -ForegroundColor DarkRed -BackgroundColor DarkYellow Write-Verbose ($Jetztmeldung="$Befehlchensname.: `$Jetzt=$(($Jetzt=$([Datetime]::Now.ToString("o")))),`$Datenkarteienname=`"$Datenkarteienname`".") -Verbose:($v) $Zertifikat=(dir -recurse $Signaturenverzeichnisse|where{(($_.Thumbprint-eq"$sha1_Schluessel")-and($_.PSParentPath-ilike"*\My"))})|select -first 1; #|ft -AutoSize -Wrap [0] #Write-Host "Zertifikat=$($Zertifikat)." -ForegroundColor DarkGreen -BackgroundColor DarkYellow if( $v){Write-Host "`$Jetztmeldung=$Jetztmeldung,`$Zeitendiener=`"$Zeitendiener`"." -ForegroundColor DarkRed -BackgroundColor DarkYellow} #|ft -AutoSize -Wrap #,`$Zertifikat=$Zertifikat $Signaturen=Set-AuthenticodeSignature -FilePath $Datenkarteienname -Cert $Zertifikat -TimestampServer $Zeitendiener -HashAlgorithm $Signaturenalgorithmus -IncludeChain All -Verbose:($v) -ErrorAction Continue #|-HashAlgorithm:"SHA256"ft -AutoSize -Wrap try{}catch[System.Exception]{Write-Host $error}Source if(-not$K){$Signaturen}else{$Signaturen|ä @{name="Thumbprint";expression={$_.SignerCertificate.Thumbprint}},Status,Path} #|ft -AutoSize -Wrap } |