Перепишите URL перенаправления пружинной безопасности

Благодаря исходной отвечающей стороне для этого решения! Для тех, которым интересно, здесь это находится в VB:

If LicenseManager.UsageMode <> LicenseUsageMode.Designtime Then
    Me.Width = Double.NaN
    Me.Height = Double.NaN
End If
6
задан Uchenna Nwanyanwu 20 July 2012 в 10:43
поделиться

4 ответа

Я никогда не использовал Tuckey, но после беглого просмотра документации я бы попытался добавить одно правило для случая входа в систему:

<urlrewrite>
    <rule>
        <from>^/my-context/login$</from>
        <to>/my-context/login</to>
    </rule>
    <rule>
        <from>^/(.*)$</from>
        <to>/-/$1</to>
    </rule>
</urlrewrite>

EDIT
Хорошо, и что-то вроде этого:

<urlrewrite>
    <rule>
        <from>^/-/login$</from>
        <to>/login</to>
    </rule>
    <rule>
        <from>^/(.*)$</from>
        <to>/-/$1</to>
    </rule>
</urlrewrite>
0
ответ дан 17 December 2019 в 07:06
поделиться

Я изучал эту проблему для нашего проекта в прошлом году, и тогда проблема заключалась в том, что Tucky не сотрудничал с response.encodeRedirectUrl () для перезаписи URL-адресов перенаправления. Я связался с ними, но не следил за этим.

Мое решение заключалось в том, чтобы разрешить беспорядочный URL-адрес вернуться к клиенту, но затем очистить его с помощью правила перенаправления Tucky (второе перенаправление).

Итак добавьте еще одно правило, которое соответствует вашему уродливому URL из перенаправления безопасности, и выполните собственное перенаправление на чистый URL:

<rule>
    <from>^/whatever/ugly.*$</from>
    <to type="redirect">/login</to>
</rule>

Да, оно включает два перенаправления, но клиент никогда его не увидит ...

2
ответ дан 17 December 2019 в 07:06
поделиться

Безопасность Spring выполняет перенаправление с абсолютным URL-адресом, например http://example.org/-/login

Попробуйте использовать исходящее правило без ^ начало строки маркер, соответствующий абсолютному URL-адресу, сгенерированному spring.

<outbound-rule>
    <from>/-/login(.*)$</from>
    <to>/login$1</to>
</outbound-rule>    
1
ответ дан 17 December 2019 в 07:06
поделиться
[

] Я столкнулся с той же проблемой, но она, кажется, исправлена в версии 3.2.0 Tuckey. т.е. response.encodeRedirectUrl() теперь обёрнута Tuckeys UrlRewriteWrappedResponse, где происходит выполнение исходящего правила.[

].
1
ответ дан 17 December 2019 в 07:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: