Signieren mit einem Token ohne Eingabe eines Passworts

Ein häufiges Problem für unsere Nutzer ist die Notwendigkeit, das Passwort für das Token jedes Mal einzugeben, wenn sie unterschreiben. Das ist nicht nur lästig, sondern behindert auch die Automatisierung. In diesem Artikel bieten wir endlich eine Lösung an.

Erste Option - Single logon

Eine triviale und schnelle Option ist die Aktivierung der Option Enable single logon in den Kundeneinstellungen (Client Settings) und der Registerkarte Advanced. Dies bedeutet, dass Safenet Sie nach der Eingabe Ihres Passworts nicht mehr nach Ihrem Passwort fragt, bis Sie sich abmelden.

Einstellung von Single logon im Safenet
Einstellung von Single logon im Safenet

Die zweite Option - das Passwort beim Signieren unterschieben

Beim Signieren der Datei selbst gibt es die Möglichkeit, das Passwort beim Signieren der Datei zu unterschieben - dann fragt Safenet nicht nach dem Passwort. Dazu verwenden Sie die Parameter /f, /csp und /k; in den zweiten davon muss das Passwort zusammen mit dem Containernamen eingetragen werden.

Hier ist ein Beispiel, in dem Sie die notwendigen Datenwerte finden können, bereiten Sie diese vor:

    Export des Zertifikats vom Safenet
    Export des Zertifikats vom Safenet
  • /f CERTIFICATE.cer - Ort des Zertifikatexports vom Token in eine Datei (der private Schlüssel kann natürlich nicht exportiert werden)
  • Feststellung Container name und Cryptographic provider
    Feststellung Container name und Cryptographic provider
  • /csp - die Bezeichnung Cryptographic provider - finden Sie im Safenet in der Sektion private key, z.B. „eToken Base Cryptographic Provider“
  • /k - das Passwort zum Token, welches beim Signieren eingegeben wird. Kombinieren Sie es mit dem Containernamen; das Passwort muss wie im folgenden Beispiel in Klammern gesetzt werden.
    "[{{TokenPasswordHere}}]=KeyContainerNameHere"

Kombinieren Sie alles und signieren Sie

Alle oben genannten Informationen werden dem Signierbefehl über Parameter hinzugefügt. Der gesamte Signierbefehl sieht wie folgt aus:

signtool sign /f "C:\Users\User\CERTIFICATE.cer" /csp "eToken Base Cryptographic Provider" /k "[{{tokenpassword}}]=Containername" /fd SHA256 /t http://timestamp.digicert.com "C:\Users\User\APP.exe"

Signtool signiert die Datei, ohne nach einem Passwort zu fragen; es fragt nicht einmal nach dem Safenet-Passwort.

Quelle:

Beitrag Automate Extended Validation (EV) code signing with SafeNet eToken auf StackOverflow