Подтвердить что ты не робот

Аутентификация и авторизация в Spring Data REST

Я реализую приложение Spring Data REST, и я хотел бы знать, есть ли элегантный способ реализации правил аутентификации и авторизации с использованием этой структуры или связанных между собой.

Все HTTP-запросы к серверу REST должны содержать заголовки аутентификации, мне нужно проверить их и принять решение об авторизации или нет на основе метода HTTP и ассоциации аутентифицированного пользователя с запрашиваемым ресурсом. Например, (приложение является сервером REST системы электронного обучения), инструкторы могут получить доступ только к своим разделам курса, студенты могут получить доступ только к разделам курсов, на которые они подписаны, и т.д.

Я хотел бы знать, существует ли способ по умолчанию для авторизации в Spring Data REST. Если ответ будет отрицательным, не могли бы вы предложить предложение по моей проблеме? Я думаю о:

  • Сервлет-фильтры
  • Spring Безопасность
  • Spring Обработчики данных REST (как получить доступ к заголовкам HTTP?)
4b9b3361

Ответ 1

Лучший выбор для вас - Spring Безопасность. Это поможет вам добиться авторизации гораздо проще.

Spring Безопасность потребует от вас реализации, которая просматривает заголовки запросов и программно выполняет вход в систему.

Обратите внимание на принятый ответ. Я последовал за этим и реализовал уровень безопасности перед моими службами отдыха (которые были созданы с помощью RestEasy).

Аутентификация RESTful через Spring

Существует альтернативный метод. обращаться http://www.baeldung.com/spring-security-authentication-provider

В обоих случаях вы можете отключить создание сеанса, объявив аутентификацию без сохранения состояния в Spring безопасности, это поможет вам значительно повысить производительность, если большой объем обращений будет сделан для служб REST без учета состояния.