Gewusst wie: Erneutes Signieren von Anwendungs- und Bereitstellungsmanifesten
Nachdem Sie im Anwendungsmanifest für Windows Forms-Anwendungen, Windows Presentation Foundation-Anwendungen (.xbap) oder Office-Projektmappen Bereitstellungseigenschaften geändert haben, müssen Sie das Anwendungsmanifest und das Bereitstellungsmanifest erneut mit einem Zertifikat signieren. So können Sie sicherstellen, dass auf Endbenutzercomputern keine manipulierten Dateien installiert werden.
Manifeste müssen möglicherweise auch erneut signiert werden, wenn die Kunden das Anwendungs- und Bereitstellungsmanifest mit einem eigenen Zertifikat signieren möchten.
Erneute Signierung von Anwendungs- und Bereitstellungsmanifesten
In diesem Verfahren wird angenommen, dass Sie bereits Änderungen an der Anwendungsmanifestdatei (.manifest) vorgenommen haben. Weitere Informationen finden Sie unter Gewusst wie: Ändern von Bereitstellungseigenschaften.
So signieren Sie die Anwendungs- und Bereitstellungsmanifeste mit Mage.exe erneut
Öffnen Sie das Fenster Visual Studio-Eingabeaufforderung (2010).
Wechseln Sie in den Ordner, der die zu signierenden Manifestdateien enthält.
Geben Sie den folgenden Befehl ein, um die Anwendungsmanifestdatei zu signieren. Ersetzen Sie ManifestFileName durch den Namen Ihrer Manifestdatei und die Erweiterung. Ersetzen Sie Certificate durch den relativen oder vollqualifizierten Pfad der Zertifikatsdatei, und ersetzen Sie Password durch das Kennwort für das Zertifikat.
mage -sign ManifestFileName.manifest -CertFile Certificate -Password Password
Sie können z. B. den folgenden Befehl ausführen, um ein Anwendungsmanifest für ein Add-In, eine Windows Forms-Anwendung oder eine Windows Presentation Foundation-Browseranwendung zu signieren. Von Visual Studio erstellte temporäre Zertifikate werden nicht für die Bereitstellung in Produktionsumgebungen empfohlen.
mage -sign WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -sign ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -sign WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Geben Sie den folgenden Befehl ein, um eine Bereitstellungsmanifestdatei zu aktualisieren und zu signieren. Ersetzen Sie dabei die Platzhalternamen wie im vorigen Schritt.
mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
Sie können z. B. den folgenden Befehl ausführen, um ein Bereitstellungsmanifest für ein Excel-Add-In, eine Windows Forms-Anwendung oder eine Windows Presentation Foundation-Browseranwendung zu aktualisieren und zu signieren.
mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Optional können Sie das Masterbereitstellungsmanifest (publish\Anwendungsname.application) in das Bereitstellungsverzeichnis für Ihre Version (publish\Application Files\Anwendungsname_Version) kopieren.
Aktualisieren und erneutes Signieren von Anwendungs- und Bereitstellungsmanifesten
Bei dieser Prozedur wird davon ausgegangen, dass Sie bereits Änderungen an der Anwendungsmanifestdatei (MANIFEST-Format) vorgenommen haben, aber andere Dateien aktualisiert wurden. Wenn Dateien aktualisiert werden, muss der die Datei darstellende Hash ebenfalls aktualisiert werden.
So aktualisieren und signieren Sie die Anwendungs- und Bereitstellungsmanifeste mit "Mage.exe" erneut
Öffnen Sie das Fenster Visual Studio-Eingabeaufforderung (2010).
Wechseln Sie in den Ordner, der die zu signierenden Manifestdateien enthält.
Entfernen Sie die DEPLOY-Dateierweiterung aus den Dateien im Ausgabeordner für die Veröffentlichung.
Geben Sie den folgenden Befehl ein, um das Anwendungsmanifest mit den neuen Hashs für die aktualisierten Dateien zu aktualisieren und die Anwendungsmanifestdatei zu signieren. Ersetzen Sie ManifestFileName durch den Namen Ihrer Manifestdatei und die Erweiterung. Ersetzen Sie Certificate durch den relativen oder vollqualifizierten Pfad der Zertifikatsdatei, und ersetzen Sie Password durch das Kennwort für das Zertifikat.
mage -update ManifestFileName.manifest -CertFile Certificate -Password Password
Sie können z. B. den folgenden Befehl ausführen, um ein Anwendungsmanifest für ein Add-In, eine Windows Forms-Anwendung oder eine Windows Presentation Foundation-Browseranwendung zu signieren. Von Visual Studio erstellte temporäre Zertifikate werden nicht für die Bereitstellung in Produktionsumgebungen empfohlen.
mage -update WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Geben Sie den folgenden Befehl ein, um eine Bereitstellungsmanifestdatei zu aktualisieren und zu signieren. Ersetzen Sie dabei die Platzhalternamen wie im vorigen Schritt.
mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
Sie können z. B. den folgenden Befehl ausführen, um ein Bereitstellungsmanifest für ein Excel-Add-In, eine Windows Forms-Anwendung oder eine Windows Presentation Foundation-Browseranwendung zu aktualisieren und zu signieren.
mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Fügen Sie den Dateien, außer den Anwendungs- und Bereitstellungsmanifestdateien, die DEPLOY-Dateierweiterung wieder hinzu.
Optional können Sie das Masterbereitstellungsmanifest (publish\Anwendungsname.application) in das Bereitstellungsverzeichnis für Ihre Version (publish\Application Files\Anwendungsname_Version) kopieren.
Siehe auch
Aufgaben
Gewusst wie: Aktivieren von ClickOnce-Sicherheitseinstellungen
Gewusst wie: Festlegen einer Sicherheitszone für eine ClickOnce-Anwendung
Gewusst wie: Festlegen benutzerdefinierter Berechtigungen für eine ClickOnce-Anwendung
Gewusst wie: Debuggen einer ClickOnce-Anwendung mit eingeschränkten Berechtigungen
Konzepte
Sichern von ClickOnce-Anwendungen
Codezugriffssicherheit für ClickOnce-Anwendungen
Überblick über die Bereitstellung vertrauenswürdiger Anwendungen
Weitere Ressourcen
Gewusst wie: Konfigurieren des Verhaltens der ClickOnce-Eingabeaufforderung zur Vertrauenswürdigkeit