Аутентификация Rest API с помощью Apache Shiro

У меня есть серверная часть Rest API (на основе Rest), которую я хочу защитить сейчас. Я изучил как Spring Security (для которой я знаю реализацию), так и Apache Shiro. Узнав, что у shiro есть простой в использовании API, я хочу реализовать его. Однако для этого нет четких руководств по авторизации, поскольку я хотел реализовать не только базовую аутентификацию, но и дайджест-аутентификацию, чтобы иметь более безопасный API. Я читал, что Широ поддерживает это. Кроме того, я хочу хранить свое имя пользователя и пароли в базе данных, а не в ini-файле shiro, как показано в примерах. Может ли кто-нибудь помочь мне с этой реализацией? Я использовал Spring Rest для своего API.

Любой подходящий учебник поможет.


person nbnb    schedule 09.04.2017    source источник
comment
Почему бы вам не перейти на Spring Security? Кажется, это очевидный выбор.   -  person cassiomolin    schedule 10.04.2017
comment
Да, я пошел с Spring Security после того, как много покопался. Спасибо за ваш комментарий   -  person nbnb    schedule 11.04.2017


Ответы (1)


В каталоге Shiro samples еще нет дайджестов. Это можно сделать, но вам нужно немного покопаться (посмотрите, как BasicHttpAuthenticationFilter работает)

Что касается хранения ваших пользователей в базе данных (или где-либо еще), Широ использует для этого термин realm. Вот пример gist, в котором используется JdbcRealm.

person Brian Demers    schedule 10.04.2017
comment
Спасибо! На самом деле я пошел с весенней безопасностью после того, как много прочитал. Похоже, Широ всегда поддерживает сеанс на сервере во всех связанных примерах, которые я читал. Итак, Spring Security полностью!! - person nbnb; 11.04.2017