Erstellen Sie ein selbstsigniertes Zertifikat für die interne Anwendung

701
user334981

Wir haben eine intern entwickelte VSTO-Anwendung als Word-Add-In, und ich muss sie stumm an eine Windows 7-SOE liefern. Die Domain basiert auf 2008 R2.

Wenn ich das Installationsprogramm jedoch mit einem Skript durchführe, wird der Fehler "unsigned" angezeigt, und ich muss es manuell akzeptieren, um es zu installieren.

Gibt es eine Möglichkeit, ein selbst signiertes Zertifikat zu erstellen und es mit der Anwendung zu packen, so dass die unbeaufsichtigte Installation ohne die Aufforderung für die "unsignierte" Anwendung ausgeführt wird?

2
Erstellen Sie ein selbstsigniertes Zertifikat mit OpenSSL und legen Sie es in Ihrem Zertifikatspeicher ab. Damit dies funktioniert, muss das Zertifikat ein PC auf dem Netzwerk sein. Ramhound vor 10 Jahren 1
+! für Fragen auf der richtigen Seite (statt Stack Overflow). Diese Frage scheint auch nicht zuvor gestellt worden zu sein. Ich bin mir nicht sicher, warum Sie abgelehnt wurden. jww vor 10 Jahren 0
Sie benötigen ein Microsoft-Codesignaturzertifikat. Möglicherweise müssen Sie es mit dem Microsoft Certificate Services-Snap-In erstellen oder einen Drittanbieter verwenden (ich bin nicht sicher, ob OpenSSL ein Microsoft-kompatibles Codesignaturzertifikat erstellen kann). Verwenden Sie anschließend ein Gruppenrichtlinienobjekt, um das Zertifikat auf alle Computer in der Domäne zu übertragen. jww vor 10 Jahren 0
Was ich versuche zu erreichen, ist ein SOE-Paket, bei dem ich alle erforderlichen Apps (einschließlich der .VSTO-App) installiere und dann als VDI und auch an einige Thick Clients ausließe. user334981 vor 10 Jahren 0

1 Antwort auf die Frage

0
aduguid

Zuerst würde ich ein nicht ablaufendes Zertifikat erstellen.

Start | Alle Programme | Microsoft Visual Studio | Visual Studio-Tools | Entwickler-Eingabeaufforderung für VS201X | Rechtsklick und "Als Administrator ausführen"

Bildschirmfoto

Fügen Sie dann die folgenden Befehle ein. Sie können den Zertifikatsnamen nach Ihren Wünschen aktualisieren.

Exclude the "-f" parameter on the first run or the .pfx file won't get created. MakeCert /n "CN=Anthony" /r /h 0 /eku "1.3.6.1.5.5.7.3.3,1.3.6.1.4.1.311.10.3.13" /e "01/16/2174" /sv Anthony.pvk Anthony.cer  pvk2pfx -pvk Anthony.pvk -spc Anthony.cer -pfx Anthony.pfx –f 
  • Das Datumsformat ist der US-Standard MM / DD / YYYY
  • Der Parameter "-f" wird zum Überschreiben einer vorhandenen Datei verwendet.

Wählen Sie in den Visual Studio-Projekteigenschaften "Signieren" aus, klicken Sie auf "Aus Datei auswählen ...". Navigieren Sie zu C: \ Windows \ System32, und wählen Sie die Zertifikatdatei (* .pfx) aus.

Um mehr über die verwendeten Werkzeuge zu erfahren

Makecert

http://msdn.microsoft.com/de-de/library/bfsktky3%28v=vs.80%29.aspx

Pvk2Pfx

http://msdn.microsoft.com/en-us/library/windows/hardware/ff550672%28v=vs.85%29.aspx

Referenzen: https://bernhardelbl.wordpress.com/2012/03/20/create-a-non-expiring-test-certificate-pfx-for-clickonce-applications/