Używanie CLIENT-CERT dla Tomcata bez podawania nazwy użytkownika

Próbuję, aby aplikacja internetowa Tomcat używała uwierzytelniania certyfikatu klienta dla połączeń przychodzących. Wszystko działa dobrze, gdy używamy clientAuth = true w server.xml, jednak z powodu innych aplikacji działających na tym samym serwerze nie możemy tego użyć w środowisku produkcyjnym.

Czy istnieje sposób utworzenia dokumentu web.xml w taki sposób, aby wymusił użycie certyfikatu klienta dla aplikacji w taki sam sposób, jak klientAuth = true? Wygląda na to, że użycie ustawienia KLIENT-CERT wymaga również ustawienia konta użytkownika tomcat dla każdego certyfikatu, który ma uzyskać dostęp do systemu? Musimy mieć możliwość zezwalania na wszystkie certyfikaty pochodzące z określonego urzędu certyfikacji (ustawionego w magazynie zaufanych certyfikatów serwera), w których podmiot odpowiada określonym zasadom (sprawdzanym w ramach rzeczywistej aplikacji). Miałem nadzieję, że zadziała coś podobnego, ale nie mam szczęścia!

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Everything</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>
<login-config>
    <auth-method>CLIENT-CERT</auth-method>
</login-config>

questionAnswers(2)

yourAnswerToTheQuestion