Vorlesen eingehende Zertifikat in Tomcat
ich benutze einen tomcat http-connector mit client-Authentifizierung. Wenn ein client starten Sie eine neue Verbindung zu meinem server und sendet sein Zertifikat, kann ich das Zertifikat zu erhalten und Lesen Sie den common name des eingehenden Zertifikats sind in meinen java-code. Wenn ja, wie?
Dank
adi
- coderanch.com/t/438788/Security/Read-client-certificate-Servlet Schauen Sie in das Ende der post. Viel Glück!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie das client-Zertifikat-Kette, indem man die
javax.servlet.request.X509Certificate
- Attribut auf IhreHttpServletRequest
. Dies ist ein array vonX509Certificate
s von denen der erste (position 0) ist die eigentliche client-Zertifikat (der rest der Kette vorhanden sein können, wenn intermediate-CA-Zertifikate erforderlich sind.).Können Sie dann die verschiedenen RDNs (relative distinguished name) in diesem AUFTRAGGEBER (z.B. CN), wie beschrieben in diese Antwort:
(Sie können auch BouncyCastle s
X509Name
zu bekommen jede RDN.)In einem X. 509-Zertifikat Subject DN ist eine geordnete Folge der RDNs, von denen jede eine Reihe von AVAs (Attribut-Wert-Aussagen), beispielsweise
CN=...
oderO=...
. Im Prinzip kann es mehrere AVAs pro RDN, die dazu führen, dass Probleme hier, aber das ist sehr selten. Man kann fast davon ausgehen, dass es nur ein AVA pro RDN. (Vielleicht diese Antwort von Interesse sein könnten.)Kredit mazaneicha: