EFS Verschüsselung - Zertifikat erstellen mit Powershell

Ghost_Rider_R

Lieutenant
Registriert
Nov. 2009
Beiträge
799
Hallo zusammen,

kann mir jemand sagen, wie ich mit der PowerShell ein Zertifikat für die EFS-Verschlüsselung erstellen kann?
Ich habe schon alle Möglichen Arten von Zertifikaten erstellt, jedoch steht Sie dort nie zur Auswahl:

Start-Systemsteuerung (Alte)->Benutzerkonten->Dateiverschüsselungszertifikate verwalten->Dieses Zertifikat verwenden / Zertifikat auswählen

Ja mir ist bewusst, dass man dort auch gleich eins erstellen kann, aber mir geht es Explizit um den Powershellbefehl. Da müsste es doch etwas geben, was in die Richtung geht, da ich meine Powershell-Doku gerade schreibe zum Thema Zertifikate:

New-SelfSignedCertificate -DnsName "MeinPC" -CertStoreLocation "cert:\\CurrentUser\My" -NotAfter 31.12.2099 -Type Custom

Dieses wird dann in den Benutzerzertifikaten auch eingetragen, jedoch steht es mir in der Systemsteuerung leider nicht zur Auswahl und ich komm nicht darauf, warum das so ist.

Vielen Dank schon mal für eure Hilfe.

LG Ghost Rider 😀
 
* FALSCH *

...kann geschlossen werden, der Schalter den ich gesucht habe lautet:

-Type DocumentEncryptionCertLegacyCsp

Was mir dabei aufgefallen ist, -Type Custom welcher ja alle Zwecke aktiviert funktioniert nicht, da das Zertifikat nicht eingehängt werden kann!

* FALSCH *
 
Zuletzt bearbeitet: (Inhaltlicher Fehler)
Hallo zusammen,

mir ist da wohl ein Fehler unterlaufen, der Schalter bewirkt nur ,,Dokumentverschlüsselung", nicht aber Verschlüsselndes Dateisystem. Weiß jemand, wie man mit der PowerShell ein entsprechendes Zertifikat erzeugt?

LG Ghost
 
EFS war und ist nur dateibasierte Verschlüsselung. Auch wenn der Name etwas anderes Vermuten lässt. Vollständige Verschlüsselung von Dateisystemen gibt's mit BitLocker.
 
Ja, das ist mir bekannt. Es geht mir darum, wie mit der PowerShell und dem New-SelfSignedCertificate-Befehl ein Zertifikat erzeugt werden kann, welches als Verwendungszweck ,,Verschlüsseltes Dateisystem" enthält. Da muss es doch einen Schalter geben oder?
 
Warum muss es diesen Schalter geben? EFS ist Legacykram, da ist Unterstützung schon recht dürftig. Laut Doku akzeptiert "-Type" fünf Werte:
-Type

Specifies the type of certificate that this cmdlet creates. The acceptable values for this parameter are:
  • CodeSigningCert
  • Custom
  • DocumentEncryptionCert
  • DocumentEncryptionCertLegacyCsp
  • SSLServerAuthentication (default)
Vermutlich musst du über "Custom" gehen und die entsprechenden Eigenschaften direkt angeben.
 
Weil ich mir gerne via PowerShell ein entsprechendes Zertifikat ausstellen möchte. Außerdem habe mir mir ein eigenes Tool geschrieben, welches diverse von mir benötigte Zertifikate komfortabel ausstellt. Was mir aber noch fehlt, ist der Use-Case EFS-Verschlüsselung. Ich habe festgestellt, dass bei -Type Custom der Schalter Verschlüsseltes Dateisystem auch mit drin ist. Soweit so gut, allerdings kann ich das Zertifikat nicht auswählen, da das Zertifikat nicht den ,,Anforderungen" entspricht. Welche Anforderungen muss denn ein EFS-Zertifikat noch haben?
 
Evil E-Lex schrieb:
EFS ist Legacykram, da ist Unterstützung schon recht dürftig
Nein. EFS ist ein fixer Teil von NTFS, genauso wie Compression, Journaling und sonstiges. Deswegen bekam EFS mit 1607 auch Support unter (Ex)FAT.
Ghost_Rider_R schrieb:
Welche Anforderungen muss denn ein EFS-Zertifikat noch haben?
Mit certutil -v -dump $file kannst du dir alles vom Zertifikat genau anzeigen lassen. Wahrscheinlich musst du einfach eine Extension mit der OID 1.3.6.1.4.1.311.10.3.4 hinzufügen.
 
  • Gefällt mir
Reaktionen: Ghost_Rider_R
Yuuri schrieb:
Mit certutil -v -dump $file kannst du dir alles vom Zertifikat genau anzeigen lassen. Wahrscheinlich musst du einfach eine Extension mit der OID 1.3.6.1.4.1.311.10.3.4 hinzufügen.

Danke für den Tipp, habe ich gemacht und konnte tatsächlich nur den Abschnitt mit 1.3.6.1.4.1.311.10.3.4 als offensichtliche Differenz finden. Dieser lässt sich wie folgt als Parameter einfügen:

-TextExtension @("2.5.29.37={text}1.3.6.1.4.1.311.10.3.4")

Das Blöde ist nur, das Zertifikat wird trotzdem nicht vorgeschlagen 🤔🤷‍♂️.
Hat jemand noch ne andere Idee?
 
Hat sich erledigt, es ist doch dieser Schalter:

-Type DocumentEncryptionCertLegacyCsp

Was man beachten muss:
Dieser Schalter kann nicht mit anderen kombiniert werden wie z.B. CUSTOM und man darf nicht

-KeyAlgorithm RSA

verwenden, da sonst eine Smartcard Abfrage kommt. Das ist aber auch nur bei diesem Schalter so.

Und das Zertifikat hat als Verwendungszweck Dokumentenverschlüsselung statt Verschlüsselndes Dateisystem, funktioniert aber scheinbar trotzdem und ist auswählbar.

Danke für eure Hilfe.
 
  • Gefällt mir
Reaktionen: Evil E-Lex
Zurück
Oben