Почему пересылка Fusion Middleware вызывает проблемы с моим процессом аутентификации Spring Security? - PullRequest
0 голосов
/ 05 января 2012

У нас есть Fusion Middleware, настроенный для обработки наших сертификатов. Он настроен на порт 443 и перенаправляет свои запросы после обработки процесса сертификации на экземпляр weblogic 11g, настроенный на порту 8001. Этот экземпляр обрабатывает аутентификацию и возвращает ответ через Middleware. Мы используем Spring 2.5.6 и Spring Security 2.0.4. Это гибкое веб-приложение. Используя firebug / firefox, я смог убедиться, что сервер правильно обрабатывает запрос аутентификации и пытается вернуть мой loginSuccess.htm (настроенный с помощью org.springframework.security.ui.webapp.AuthenticationProcessingFilter в моем конфигурационном файле безопасности Spring), но я вижу, что это 302 forward error'd со статусом от firebug, говорящим Aborted.

Также следует отметить, что аутентификация и приложение отлично работают на автономном экземпляре weblogic; именно когда мы представили часть Fusion Middleware между веб-приложением и клиентом, мы начали сталкиваться с проблемами аутентификации.

Вот фрагмент моей записи конфигурации AuthenticationProcessingFilter:

<bean id="authenticationProcessingFilter" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilter">
        <property name="authenticationManager" ref="authenticationManager"/>
        <property name="authenticationFailureUrl" value="/loginFailure.htm"/>
        <property name="defaultTargetUrl" value="/loginSuccess.htm"/>
        <property name="filterProcessesUrl" value="/login.htm"/>
        <property name="rememberMeServices" ref="rememberMeServices"/>
        <property name="alwaysUseDefaultTargetUrl" value="true" />
        <property name="usernameParameter" value="username"/>
        <property name="passwordParameter" value="password"/>
</bean>

Любое понимание было бы полезно. Мы внедрили Fusion Middleware, поскольку это рекомендуемый производственный подход Oracle; у нас были проблемы с сертификатами заранее.

1 Ответ

0 голосов
/ 11 января 2012

dvuke - используя Oracle Fusion Middleware, перенаправление может быть обработано через сервер приложений - поэтому, по сути, не нужно вносить изменения в ваш весенний фильтр.

Этот подход использует постоянный атрибут перенаправления в вашем httpdФайл .conf может решить проблему, которую вы описываете.Таким образом, любое перенаправление в вашем коде можно принудительно обслуживать через https.

NameVirtualHost *:80
Listen 80
<VirtualHost *:80>
    ServerName http://server-name
    Redirect permanent /contextRoot https://server-name/contextRoot
</VirtualHost> 

По крайней мере, на какой-либо путь, чтобы изучить!

...