Der Mac OS X-Sicherheitsexport akzeptiert keine Passphrase

11

Ich versuche, einige Elemente in meinem Schlüsselbund folgendermaßen zu exportieren:

hostname:~ username$ security export -k login.keychain -t all -P "passphrase"

aber ich bekomme immer diesen Fehler:

security: SecKeychainItemExport: Passphrase is required for import/export

Was gibt?

Klarstellung : Ich bin über SSH angemeldet.

Ben Collins
quelle

Antworten:

2

Wenn ich renne

security export -t identities

Ich erhalte die gleiche Fehlermeldung:

security: SecKeychainItemExport: Passphrase is required for import/export.

Wenn ich jedoch ein Format mit geöffnetem -f spezifiziere (und den binären Ausgabestream in eine Datei lege), funktioniert es:

security export -P testing -f pkcs12 -t identities -o test.p12

liefert eine Datei, mit der ich über arbeiten kann openssl.

Es sieht für mich so aus, securityals würde hier nur die falsche Fehlermeldung verwendet, sodass es so aussieht, als ob die Funktion nicht funktioniert. Es sollte wahrscheinlich lauten: "Sie müssen ein Format angeben, um private Schlüssel zu exportieren" oder entsprechende Wörter.

Die eigentliche Einsicht stammt aus diesem Tweet .

NateEag
quelle
5

Das ist nur kaputt, IMO. 'Sicherheitsexport' verhält sich sehr schlecht, wenn Sie versuchen, private Schlüssel zu exportieren und sich mit SSH anmelden. Dieselben Befehle funktionieren, wenn Sie sich über die GUI anmelden. Ist das absichtlich?

Je nachdem, was Sie benötigen, können Sie dies möglicherweise mit "Sicherheitsfindungszertifikaten" oder "Sicherheitsexportzertifikaten" umgehen. Es funktioniert alles, solange Sie keinen privaten Schlüssel exportieren.

Skrymsli
quelle
3

Wenn Ihre Passphrase ungerade Symbole enthält, die Ihre Shell verschluckt, versuchen Sie, einfache Anführungszeichen anstelle von doppelten zu verwenden, um eine Interpolation zu verhindern.

security export -k login.keychain -t all -P 'passphrase'
Walt Stoneburner
quelle
Ich denke, das ist kein Zitatproblem.
Charles Stewart