Возможно ли иметь несколько клапанов проверки подлинности в одной и той же конфигурации контекста Tomcat? Я знаю, что вы можете иметь несколько Realms через CombinedRealm
, но как насчет разных методов аутентификации?Несколько клапанов Authenticator Tomcat
Мне нужно обновить веб-приложение, чтобы он мог использовать новый источник аутентификации, при этом все еще используя устаревший источник аутентификации, чтобы вернуться обратно.
Вот что я в настоящее время в context.xml приложения:
<Context path="/myApp">
<Valve className="com.company.NewAuthenticator"/>
<Valve className="com.company.LegacyAuthenticator"/>
<!-- Dummy realm to prevent pop-up window -->
<Realm className="com.company.DummyRealm"/>
</Context>
Оказывается, что NewAuthenticator
отклоняет запрос пользователя, то LegacyAuthenticator
никогда не вызывается. Я предполагаю, что это ожидаемое поведение, но есть ли другой способ сделать эту работу?
Детали:
- Tomcat 6.0
- Я есть использовать Authtenticators, поскольку обе пользовательские системы устанавливают значения в HTTP-запроса, которые определяют аутентификации успеха/неудачи, и мне нужно, чтобы создать пользовательскую безопасность Tomcat чтобы сохранить роли.
- Оба источника аутентификации являются обычными и нестандартными. Я должен написать свои собственные аутентификаторы.