Я разрабатываю веб-приложение с использованием AngularJS и Spring (4.1.0.RELEASE) в качестве бэкэнд. В настоящее время все работает отлично. Теперь, когда функциональность выполнена, я хотел бы добавить Spring Security (3.2.5.RELEASE) в проект, как для аутентификации, так и для авторизации всех запросов. Поскольку я использую Angular, все мои взгляды являются статическими и никогда не отображаются сервером. Поэтому типичная настройка Spring Security (с помощью jsp для входа в систему) не будет работать. Я рассмотрел множество примеров, и ни один из них не соответствовал моим потребностям. Я не хочу использовать какие-либо внешние фреймворки, такие как Джерси, чтобы помочь с проверкой подлинности или любыми просмотренными сервером видами, например. JSPs.Добавление Spring Security к существующему Spring AngularJS Application
Когда я включаю Spring Security, мои запросы GET по-прежнему работают нормально, но мои запросы POST, такие как мои запросы на вход, больше не работают и возвращают ошибку 404. Контроллеры правильно сопоставлены, и URL-адреса являются действительными, поэтому я знаю, что он должен иметь какое-то отношение к Spring Security, перехватывая запрос и считая его недействительным. Я не уверен, почему это так, но я думаю, что это может иметь какое-то отношение к запросам, не имеющим правильных заголовков и защите CSRF от Spring. Я не хочу отключать эту защиту. Мой вопрос в том, как я могу определить пользовательский URL-адрес для входа с Spring Security, который будет аутентифицировать мой запрос POST для входа, а затем отправить все заголовки, необходимые для включения будущих, прошедших проверку подлинности запросов?
EDIT: У меня есть URL-адрес для работы. Есть ли способ извлечь токен CSRF из вызова ajax? Мои представления все статичны, и сервер сначала попадает в запрос на вход, поэтому нет jsps и нет способа получить токен csrf с сервера через библиотеки тегов jsp. В первом ответе предполагается, что мы находимся на jsp, что не так. Есть ли способ разрешить защиту CSRF, или мне нужно отключить ее и выполнить мою собственную проверку запроса?
Myself также ищет ответ на свой вопрос. спасибо за размещение здесь! – Asik
Похоже, способ, которым вы звоните в методы Post, может быть неисправен, можете ли вы показать код, с которым работаете? – Aeseir
Методы отлично работали до того, как была добавлена Spring Security, поэтому я знаю, что это не имеет ничего общего с ними. Это как-то связано с Spring Security – holtc