![]() |
AW: Code Sign Zertifikat
Bei uns geht der Build auf einer VM mit YubiKey. Ich meine dass dann aber für jede VM die builded ein solcher Key da sein muss.
|
AW: Code Sign Zertifikat
Ich wollte hier auch noch schnell so kurz vor knapp das ohne Stick hier bekommen,
aber wurde sich nicht ausgekekst und dann war's vorbei. Zitat:
Im Delphi leider nur im Windows-Store-Profil. Aber es lässt sich ja auch problemlos via AfterBuildScript im Delphi, sowie MSBuild erledigen. (vermutlich auch via CustomUserAction im MSBuild (UserTools.proj), aber ich vermute der InlineCompiler ignoriert das und dann müsste man es zusätzlich auch noch via OTA ans AfterBuild hängen) Bei uns kommt dann noch dazu, dass die meisten Entwickler auf dem RDP arbeiten und dann müsste der Stick oder die PCIe-Karte entweder bei Hetzner in den Server und dort in die WindowsVM oder man müsste das irgendwie vom Büro aus (NAS) in den Server und möglichst auch bei 2-3 Rechnern/Schlepptops lokal oder gar von daheim/unterwegs aus. Klar, für's lokale Arbeiten könnte man sich auch mit einem SelfSigned behelfen, aber dann kann man eben nicht mehr mal eben die TestVersion so zum Kunden geben. |
AW: Code Sign Zertifikat
Zitat:
|
AW: Code Sign Zertifikat
Es gibt bestimmt welche mit Daumen, aber ich glaub die Meisten sind ohne.
Und die interne Variante, z.B. als PCIe-Karte, da geht das mit dem Daumen eh nicht. Für Daheim/Büro ginge es z.B. auch so (theoretisch), dass man den Stick an die Synology, QNAP oder USB-LAN-Adapter steckt, via VirtualHere den USB-Port/Device zum PC durch's LAN/WLAN reicht und es lokal über einen virtuellen USB-Treiber nutzen kann. Wenn man danach trennt, kann anschließend der nächste Kollege. Drum wollte ich aber auch das Zertifikat noch schnell ohne Stick, um überhaupt erstmal mit Signieren anfangen zu können, und dann dieser Scheiß noch bissl Zeit gehabt hätte. :cry: Aber bevor das jetzt kommt, werde ich wohl vorher noch dazu kommen mit einem KurzzeitMiet-Cloud-MAC privat mal für iOS/MacOS kompilieren zu können. :duck: |
AW: Code Sign Zertifikat
Bei mir signiert Innosetup, das hat den Vorteil, dass auch der Installer und der Uninstaller gleich signiert ist.
Aktuell habe ich ein OV Zertifikat, das 'nur' eine Pin (nennt sich hier Token) braucht, den ich über eine App auf dem Smartphone erzeuge. Es läuft glücklicherweise auch noch fast zwei Jahre .... |
AW: Code Sign Zertifikat
So, ich habe jetzt mal meine angedachte Lösung testweise implementiert, wobei ich mich freuen würde, wenn jemand sich das mal ansehen könnte. Könnte ja evtl. auch eine Blaupause für eine eigene Lösung sein. Oder Ihr macht mir klar, dass ich auf dem Holzweg bin ;-))
Ich habe jetzt mal ein Programm nicht als Setup.exe auf meine HP gelegt, sondern als Setup_HTMLEditor.zip. Das ist kein offizieller Link, poste ich nur hier: ![]() Diese Datei runter laden, alles in einen Ordner entpacken und die "Setup.exe" starten. Die Setup.exe ist sozusagen meine "Ewigkeits-Setup.exe", weil ich die nie mehr ändern muss. Die habe ich jetzt noch mit dem KSoftware-Zertifikat signiert und mit dieser Datei hat ja Windows keine Probleme (auch wenn das Zertifikat zeitlich abgelaufen ist), sollte also ohne Probleme mit "blauem Schild" und verifiziertem Herausgeber starten. Die Setup.exe holt sich aus der Setup_Resources.dll die benötigten Setupdateien. Die DLL ist mit meinem selbst ausgestelltem Zertifikat signiert, damit mir keiner da was anderes unterschieben kann (wird auch überprüft). Während des Setups bekommt der User das Angebot das Hastasoft Stammzertifikat auf seinem PC zu installieren (man muss die Checkbox aktivieren). Wenn man den Hilfe-Schalter drückt, bekommt man auch den Hinweis auf die ![]() (auch noch kein offizieller Link), wo man sich die Informationen zum Stamm- und zum Codesigning Zertifikat ansehen kann. Das kann man dann vergleichen mit dem Fingerprint, den Windows bei seiner Warnung ausgibt, dass ein Stammzertifikat eines unbekannten Herstellers auf dem PC installiert werden soll. Eigentlich alles ganz transparent und sicher. Oder was meint Ihr? Die Installation funktioniert auch ohne Installation des Stamm-Zertifkats, man kann auch alle Programme ausführen. Aber das eigene, selbst erstellte Zertifikat in "HTMLEd.exe" kann man eben nur verifizieren, wenn man das Hastasoft Stamm-Zertifkat auf dem PC installiert hat. |
AW: Code Sign Zertifikat
Kommt eigentlich die Smartscreen Warnung auch, wenn ein signiertes Programm ein unsigniertes startet? Sonst könntest du doch noch einen Launcher signieren, der das eigentliche Programm startet...
|
AW: Code Sign Zertifikat
signierte Explorer.exe -> unsigniertes Programm starten -> Peng :stupid:
|
AW: Code Sign Zertifikat
Zitat:
Ach ja: Windows 10 mit dem Defender als Snakeoil. |
AW: Code Sign Zertifikat
Einfachste Lösung: Magic Bytes rauslöschen und in einen msi-Installer packen. Keine Signatur nötig. Und keine meckernden Schlangen oder Öle. Quelle:
![]() |
AW: Code Sign Zertifikat
Moin Moin,
ich habe das nicht so tief verfolgt (den Thread hier) - nur so weit, das eine Executable signiert werden soll ? Man kann ja erstmal ALLES lokal testen, bevor man bei "Code Sign" oder einer anderen CA seines Vertrauens ein Zertifikat für teuer bestellt - weil das geht fast problemlos auch ohne (also Eigene CA und Self Sign Cert). Dazu muss/ist die im Microsoft SDK vorhandene signtool.exe erforderlich. Und das Zertifikat muss dann dem Provider (der Lokale Rechner) bekannt gemacht werden. Dazu verwende ich als Template folgendes PowerShell Script:
Code:
muss natürlich angepasst werden.
# ---------------------------------------------------------------------------
# File: gencert.cmd - generate a certificate fot executable signing. # Author: Jens Kallup - paule32 # # Rights: (c) 2024 by kallup non-profit software # all rights reserved # # only for education, and for non-profit usage !!! # commercial use ist not allowed. # # To create the certificate, copy lines 13, ..., 19 into the clipboard, and # paste the copied text into powershell console. Press return, and voila: # you have a self signed certificate into your local certification store. # --------------------------------------------------------------------------- New-SelfSignedCertificate ` -Type Custom ` -Subject "CN=kallup non-profit" ` -KeyUsage DigitalSignature ` -FriendlyName "chmFilter" ` -CertStoreLocation "Cert:\CurrentUser\My" ` -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3","2.5.29.19={text}") $password = ConvertTo-SecureString -String "mypassword" -Force -AsPlainText Export-PfxCertificate -cert "Cert:\CurrentUser\My\<fingerprint thumb>" -FilePath certificate.pfx -Password $password # now, in the Visual Studio C++ Console: # signtool sign /f ./certificate.pfx /p mypassword /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 observer.exe HTH - Hope This Helps |
AW: Code Sign Zertifikat
Zitat:
|
AW: Code Sign Zertifikat
Zitat:
|
AW: Code Sign Zertifikat
Zitat:
Also eigentlich alles ganz normal. Programme lassen sich auch ohne Probleme auf einem eingeschränkten Benutzerkonto (nach Anforderung der Adminrechte) installieren und später ausführen. |
AW: Code Sign Zertifikat
Zitat:
|
AW: Code Sign Zertifikat
Zitat:
|
AW: Code Sign Zertifikat
das mit dem Administrator ist so ne Sache...
angenommen Du hast ein (Windows)Programm, das Adim-Rechte fordert: - dann kommt auf jeden Account eine Admin-Meldung, egal ob Du da nun mit Benutzer oder mit Benutzer-Admin Account werkelst - dann hast Du aber nur eine Leasing-Timeout, sprich: wenn Du nach 30 Minuten das selbe Programm starten möchtest, erscheint die gleiche Meldung (mit Key abfrage) das ähnliche ist, wenn Du einen Virenscanner wie A-Vast oder dem Defender ein neues Programm unterjubbeln willst - dann kommt einmalig eine Meldung, und in der restlichen Zeit merkt sich Avast oder Defender den Ort + Datum + Hash der Datei. Sollte dann an dieser Datei eine Änderung vorgenommen werden, dann wird der alte berechnete Hash überschrieben. Und beim (neu)starten der Anwendung erscheint wieder die der Dialog mit Admin + Key ... Man kann das aber auf den Entwicklungs-Rechner so lösen, das man spezielle Ausnahmen dem Avast oder dem Defender beibringt. Das können zum Beispiel nur einzelne Executable-Dateien oder aber auch ganze Verzeichnisse sein. Auf einen produktiv-System hingegen würde ich nicht mit den installierten Admin-Account die Programme freischalten, weil es auch dort den Key erfordert. Eine Möglichkeit wäre, sich in den Richtlinien des Computers sich: 1. eine Organization anlegen (OU = Orgranization Unit) das hat den Vorteil, dass das vorliegende Setup nicht durch Experiemente an den Richtlienen der jeweiligen Organization (hier: default) kaputt macht. 2. einen oder mehrere Admin-Benutzer-Account's anlegen (und ggf. abmelden und mit den gewünschten Admin-Account weiter machen. Passwort natürlich ändern. 3. eine oder mehrere Benutzergruppe anlegen 4. in den Benutzergruppen dann Mitglieder aufnehmen (normale Benutzer Account's) 5. den Benutzergruppen den Admin-Account als "Member of" hinzufügen Dann könnte man sich an die Login-Zeiten und/oder Verzeichnis-Rechte heran tasten, so dass nur bestimmte Gruppen oder Benutzer Zugriff auf veerbte oder statisch erstellte Objekte zugreifen können. Wenn sich nun ein Admin-Benutzer sich in das System einloggt, dann kann dieser Benutzer mit seinen "Eigenen" Passwort das Programm starten, ohne dabei ab Super-Admin-Rechte zu gelangen. Das ganze kann man fast unendlich weiter treiben (zum Beispiel mit ActiveDirectory, wo dann Domains mit Domains untereinander kommunizieren können (oder Beschränkungen unter- liegen, die dann weiter eingeschränkt werden können, ansonsten, das übliche weiter im Konzert (was bereits geschrieben wurde). etc. pp... blah bla... |
AW: Code Sign Zertifikat
Egal, was Du nimmst, Du solltest weniger davon nehmen. Es geht darum, dass ein herunterladbares Setup beim Endanwender den Virenscanner anschlagen lässt, wenn es kein Zertifikat einer offiziellen Stelle enthält. Da hilft eine OU und dergleichen nicht unbedingt weiter.
|
AW: Code Sign Zertifikat
ich kann ja gut verstehen, das der kapitalistische Markt auf "rollendes Geld" aufgebaut ist.
Aber ich bin der Meinung: - bevor man viel Geld in den Sand setzt, sollte man soviel wie möglich, erstmal lokal testen - es gibt Tools für die gängigen drei Betriebsysteme, die das ermöglichen - man muss nur mal nachfragen... ..und nicht damit kommen, das der Eine oder Andere damit angenörgelt wird, als würde dann dieser als Kapitalfeind Nummer Eins angesehen. ich bin halt noch ein ehrlicher Spitzbube/Gauner... |
AW: Code Sign Zertifikat
Ich denke Du hast das Problem nicht verstanden. Ich wiederhole:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz