+ Antworten
Ergebnis 1 bis 4 von 4

Thema: Tomcat Connector trustMaxCertLength

  1. #1
    User Kilobyte Themenstarter
    Avatar von Greta
    Registriert seit
    15.08.2013
    Ort
    im Büro
    Fachbeiträge
    178
    Genannt
    32 Post(s)
    Hallo zusammen,

    ich bin mir gerade nicht ganz sicher ob ich das richtig verstanden hab.

    Wenn mein Tomcat Verbindungen über HTPPS zulassen soll, definiere ich mir in der server.xml einen entsprechenden Connector. Das sieht dann bsow. so aus:
    XML Code:
    1. <Connector protocol="org.apache.coyote.http11.Http11Protocol"
    2.               port="8443"
    3.               SSLEnabled="true"
    4.               maxThreads="150"
    5.               scheme="https"
    6.               secure="true"
    7.               clientAuth="true"
    8.               sslProtocol="TLS"
    9.               keystoreFile="cert\keystore.jks"
    10.               keystorePass="localhost"
    11.               truststoreFile="cert\cacerts"
    12.               truststorePass="changeit"  />

    Nun gibt es für den Connector noch das Attribut: trustMaxCertLength
    Zitat Zitat von http://tomcat.apache.org/tomcat-7.0-doc/config/http.html#SSL_Support_-_BIO_and_NIO
    The maximum number of intermediate certificates that will be allowed when validating client certificates. If not specified, the default value of 5 will be used.
    Wenn ich trustMaxCertLength="1" setze und folgenden Zertifizierungspfad habe:
    Code:
    CA-ROOT
     |
     --CA-OTHR
        |
        --Client-Cert
    Reicht es dann aus, das CA-ROOT im Truststore zu haben?

    Und folgendes Zertifikat müsste abgelehnt werden?
    Code:
    CA-ROOT
     |
     --CA-OTHR-A
        |
        --CA-OTHER-B
           |
           --Client-Cert
    Ich bin so klug, K L U K!!!

  2. #2
    User Viertel Megabyte Avatar von inv_zim
    Registriert seit
    31.07.2013
    Ort
    Rhein-Main Gebiet
    Fachbeiträge
    371
    Genannt
    31 Post(s)
    So würde ich es auch interpretieren, ja. Der Parameter steuert die Anzahl der maximalen Zwischenzertifizierungsstellen. Sollte es mehr als zwei geben, müsste dein Tomcat die Verbindung ablehnen.
    I am obsessed with the ancient science of "puzzle-ometry". I have discovered that within puzzles lies the secret of human intelligence, that which separates us from the common beast.

  3. #3
    Frequent User Megabyte
    Registriert seit
    01.08.2013
    Fachbeiträge
    1.737
    Genannt
    112 Post(s)
    Ich habe mich gerade kurz durch den Tomcat-Quellcode gewühlt. Die Eigenschaft ist ein Wrapper für PKIXBuilderParameters.html#setMaxPathLength(int) (wenn man die JSSE-Implementierung für SSL-Sockets gewählt hat) bzw. für SSLContext.html#setVerify(...) (bei Verwendung von OpenSSL).

    Die gekürzte Doku dazu:
    Zitat Zitat von JSSE
    Sets the value of the maximum number of non-self-issued intermediate certificates that may exist in a certification path. A certificate is self-issued if the DNs that appear in the subject and issuer fields are identical and are not empty. Note that the last certificate in a certification path is not an intermediate certificate, and is not included in this limit. Usually the last certificate is an end entity certificate, but it can be a CA certificate. A PKIX CertPathBuilder instance must not build paths longer than the length specified. [...]
    Zitat Zitat von OpenSSL
    [...] The depth actually is the maximum number of intermediate certificate issuers, i.e. the number of CA certificates which are max allowed to be followed while verifying the client certificate. A depth of 0 means that self-signed client certificates are accepted only, the default depth of 1 means the client certificate can be self-signed or has to be signed by a CA which is directly known to the server (i.e. the CA's certificate is under setCACertificatePath), etc.
    Diese Dokumentation bestätigt meiner Lesart nach deine Annahme. Edit: Zumindest bei OpenSSL scheint das Rootzertifikat mitgezählt zu werden.

    Ging es dir bei der Frage darum, wie der Parameter zu interpretieren ist, oder möchtest du den Wert tatsächlich auf 1 reduzieren?

    Der Defaultwert ist (zumindest bei Tomcat 9) übrigens 10, nicht 5.
    Geändert von cmrudolph (04.12.2016 um 11:08 Uhr)

  4. Es bedanken sich:
    Greta (05.12.2016)
  5. #4
    User Kilobyte Themenstarter
    Avatar von Greta
    Registriert seit
    15.08.2013
    Ort
    im Büro
    Fachbeiträge
    178
    Genannt
    32 Post(s)
    Es soll tatsächlich auf ein Zwischenzertifikat reduziert werden. Der Kunde möchte das so.

    Der Truststore ist mit Keytool erstelt, dann sollte das also so korrekt sein. Das ganze wird ja eh nochmal getestet bevor es produktiv geht, wollte mich dann nur nicht blamieren xD
    Ich bin so klug, K L U K!!!

+ Antworten Thema als "offen" markieren

Direkt antworten Direkt antworten

Zu welchem Kontinent gehört Japan?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Tomcat - MemoryLeakDetection
    Von dpo im Forum Java Enterprise Edition (Java EE)
    Antworten: 3
    Letzter Beitrag: 17.03.2015, 18:13
  2. Tomcat classpath/classloader Application aus Tomcat Container starten
    Von Admiral-Helmut im Forum Java Enterprise Edition (Java EE)
    Antworten: 4
    Letzter Beitrag: 23.12.2014, 11:29
  3. SonarQube 4.1 und Tomcat
    Von EagleEye im Forum Software
    Antworten: 9
    Letzter Beitrag: 18.01.2014, 13:39
  4. Parameterübergabe Tomcat
    Von ChrAu im Forum Java-Grundlagen
    Antworten: 1
    Letzter Beitrag: 21.11.2013, 22:29
  5. ShutdownHook Tomcat
    Von Unregistriert im Forum Allgemeine Themen
    Antworten: 0
    Letzter Beitrag: 19.08.2013, 16:29

Stichworte

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •