alter x509 erweiterten Eigenschaften / Verbräuche
-
22-09-2019 - |
Frage
Gibt es eine Möglichkeit, um programmatisch bearbeiten die Zwecke, für ein Geben X.509-Zertifikat aktiviert?
Diese Funktionalität ist über die Zertifikate mmc verfügbar Snap-In (Hyperlink unten), aber ich muss die Aktion durch den Code auszuführen. vorzugsweise C #.
Lösung
Die MMC kann tun, was das Crypto-API tun und es gibt eine Reihe von Certificate bezogene Funktionen wie CertAddEnhancedKeyUsageIdentifier oder CertSetCertificateContextProperty . Es gibt ein ausgewachsenes Beispiel unter Beispiel C-Programm: Erste und Festlegen Zertifikateigenschaften , einschließlich einer Modifikation der ‚verstärkten Schlüsselverwendung‘, der die Verwendungen, für die gibt ein Zertifikat gültig ist. Zum Beispiel kann ein Zertifikat gültig für SSL von der Server-Seite machen, würden Sie die EKU OID 1.3.6.1.5.5.7.3.1
hinzufügen müssen (aka. ‚Server-Authentifizierung‘) finden Sie unter Konfigurieren eines Zertifikats zur Verwendung durch SSL .
Die C # entspricht der X509KeyUsageExtension Klasse. Siehe den Link zu der Klasse Spezifikation für Beispiele.