Was ist der Unterschied zwischen den beiden?
93
Das x509-Zertifikat wurde in .NET v1.0 / 1.1 eingeführt und war (vergleichsweise) in seiner Funktionalität eingeschränkt. Es kann verwendet werden, um Informationen zu einem vorhandenen Zertifikat (gültige Daten, Aussteller usw.) abzurufen. Es hatte einfache Methoden / Operationen (dh Lesen eines Zertifikats von der Festplatte).
Das x509Certificate2 ist eine Unterklasse des x509Certificate mit zusätzlichen Funktionen.
X509Certificate2
hat auch ein Mitglied für den privaten Schlüssel, der nicht Teil des Zertifikats selbst ist, aber bequem der Klasse zugeordnet werden kann, die das X.509-Zertifikat darstellt.Der Vollständigkeit halber finden Sie hier eine Kopie des relevanten Abschnitts der Website, auf den in der Antwort von @ dommer verwiesen wird, da die Website möglicherweise nicht mehr aktiv ist und sich nur noch lange im Google-Cache befindet, wer weiß wie lange:
quelle
Versuchen Sie Folgendes, um ein X.509-Zertifikat von "X509Certificate" in "X509Certificate2" zu konvertieren:
quelle
Für diejenigen, die das Zertifikat lesen und zur Authentifizierung verwenden möchten, wird einfach ein X509Certificate2 erstellt und das X509Certificate in seinem Konstruktor übergeben.
Für eine signierte Assembly (die exe) wäre der Code ein Code wie dieser, und ich lasse der Einfachheit halber die Fehlerüberprüfung weg.
Offensichtlich heißt Ihre Klasse nicht MyClass, sondern ein Geschäftsobjekt, das Sie vom Webdienst erwarten würden.
Sie können eine Klasse an Ihre Aktion senden, indem Sie die gewünschte Eigenschaft und den gewünschten Wert senden. Sie können jetzt sicherstellen, dass die Anforderung, die Sie erhalten haben, von einem gültigen Mobil- oder Windows-Client stammt, indem Sie das Anforderungszertifikat folgendermaßen lesen:
}}
Was bleibt, ist, Ihren Webserver so einzustellen, dass er Client-Zertifikate akzeptiert ... Sie können alles über Eigenschaften lesen, die aus dem neuen Format stammen, und Sie haben Ihren öffentlichen Webdienst gesichert. Die meisten tun dies nicht, da es nicht gut genug ist, nur autorisiert zu sein mehr (wenn es jemals war)
quelle