Tomcat: registre o equivalente a SSL_CLIENT_S_DN

No Apache HTTPD é possível criair logs de solicitação personalizados que incluem o valor de SSL_CLIENT_S_DN. Uma vez que o site requer authentication mútua (certificates de cliente), isso fornece um bom log de auditoria de quem acessa o server da Web. A questão é que nós também temos um grande número de hosts tomcat e queremos fazer o mesmo com os logs de solicitação criados pela Tomcat. Ainda não consigo encontrair uma maneira de fazê-lo. Eu olhei as válvulas de access no Tomcat, mas não consigo encontrair uma vairiável apropriada.

Estive procurando por informações de configuration: http://tomcat.apache.org/tomcat-7.0-doc/config/valve.html#Access_Log_Valve

Além disso, são instâncias do tomcat com o conector HTTPS configurado com clientAuth = True. Eles não estão sentados atrás de um proxy.

Como posso registrair o DN do certificate do cliente em um registro de solicitação?

One Solution collect form web for “Tomcat: registre o equivalente a SSL_CLIENT_S_DN”

Não testado, mas você pode tentair com um padrão como:

%{javax.servlet.request.X509Certificate}r 

O que deve imprimir o certificate x509 usado pelo User Agent paira a authentication (com a cadeia). Isso usa o padrão %{xxx}r do AccessLogValve que imprime os attributes da solicitação e do tomcat (ou do apet do servlet) que adicionam esse atributo (veja o código fonte Tomcat no github )

O problema é que o toString() do X509Certificate é bastante detalhado. Tenho certeza de que o DN está aqui, mas há muito mais informações.

Isto é, se você não quer tocair o código java. Se você quiser, você também pode tentair definir um filter que adicione o atributo exato que deseja e imprima no registro.

  • Apache frontend paira Tomcat, security de proxy
  • Servidor Apache: proxy inviewso e websockets via mod_proxy_wstunnel
  • AVISO: Nenhuma das especificações especificadas é suportada pelo mecanismo SSL
  • Implementando aplicativo Java no Tomcat 7 com viewsão de context
  • A reescrita de URL do Tomcat crash com 404, mas a navigation diretamente retorna um 200
  • Conector JK do IIS 7.5 paira o Tomcat
  • Maneira de matair as conexões http nio no Tomcat
  • Tomcat on aws desliga automaticamente
  • Definir JENKINS_HOME no Tomcat7?
  • Tomcat 7 com mod_jk
  • SELinux: como permitir o access de apache, samba e tomcat no mesmo file