Поддержка базовой и дайджест-проверки подлинности для одного сопоставления URI с помощью Spring Security - PullRequest
0 голосов
/ 18 ноября 2011

У меня есть сценарий использования для защиты службы RESTful, и я не совсем уверен, может ли она быть реализована или нет - по сути, я хотел бы настроить как базовую, так и дайджест-проверку подлинности. Настройка обоих фильтров в цепочке должна быть относительно простой, но я не уверен в том, как обрабатывать точку входа - насколько я могу судить, есть 2 точки входа для двух типов аутентификации, но как это должно быть потенциально работа заключается в том, чтобы вызвать правильную точку входа в случае, если заголовок авторизации поставляется с логикой базовой или дайджест-аутентификации.

Мне известно, что в Spring 3.1 у вас может быть несколько элементов, но я не думаю, что это может помочь в этом случае, поскольку эти 2 варианта аутентификации должны поддерживаться на одном и том же сопоставлении, и сопоставление, по-видимому, является единственным способом что 2 элемента могут быть дифференцированы.

Мне также известен вопрос: Spring Security 3.x: Как включить аутентификацию BASIC и DIGEST? Но, похоже, это не решает проблему множественных точек входа

Есть ли что-то, что я пропускаю, или, должно быть, не до конца понимаю? Любая помощь приветствуется. Благодарю. Eugen.

1 Ответ

1 голос
/ 22 ноября 2011

Я решил проблему - в итоге я использовал дайджест-аутентификацию (фильтр и точку входа) и добавил базовый фильтр сразу после дайджест-фильтра в цепочке.Таким образом, для запроса с учетными данными аутентификации (базовыми или дайджестами) правильный фильтр подберет его.Для анонимного запроса начнется точка входа в дайджест, и клиенту будет предложено ввести учетные данные дайджеста.

...