Веб-разработка на Java. Spring Security. Часть 1.

Автор Georgiy Dronov
Веб-разработка на Java. Spring Security. Часть 1.

Всем привет.

Сегодня начинаем изучать spring-security я уже кое-что сделал во-первых добавил необходимое моего dependency Spring Security Web Spring Security они тебя всё, что я остальные депонация. Стинга также так как мы хотим по сути у нас Spring Security позволяет нам на более высоком уровне абстракции управлять доступом к различным частям нашего приложения то есть протестировать пользователей и организует их то есть аутентификация. Это проверка того, что пользователь с именем там и паролем или ещё каким-то данными существует авторизация — это присвоение каких-то прав.

Этому аутентифицирован пользователю я для того чтобы пользователя нужно ему добавить пароль у нас этого не было.

То есть у нас имя пользователя будет mail.ua пароль то есть нечто, что знает только пользователя по идее — это паспорт. А, что ещё я добавил я разделил контроллеры. То есть у нас всё раньше была в одном контроллере Main Controller теперь здесь. Остаётся только такие общие хендлеры. А всё, что связано с регистрацией. Я вынесу мозг контроллер здесь вот хендлеры по регистрации и добавила ещё один. Короче просто. Это логин он просто возвращает страничку с страничку для логина или аутентификация и страничке также которые связаны с авторизацией и регистрацией на нее были попочку, а то есть здесь наша страна в которой у нас уже был добавил пароль сюда чтобы пользователь мог показывать пароль конечно добавить там проверка пароль, но сейчас мы всё обо мне вспомнил и страничка для, а логина или для аутентификации здесь логин email и пароль и здесь в качестве Action юрла указанный логин процесс его нет — это не случайно на поэтому и. Уралу будет ходить этот вопрос уже Spring и проводить сертификацию нашего пользователя и для того чтобы Spring — это делал нам нужно. Конечно написать конфиг. Давайте создадим новый Security config Security config он будет Extended веб Security config Error Adapter добавил аннотация на стандартной configuration также нужно будет добавить аннотацию наебала Web Security для того чтобы всё работало и. Давайте теперь определим пару методов которые нам нужны будут здесь есть метод конфиг который понимаю.. ДТП Security — это раз здесь мы будем описывать собственно разделение доступа к различным хендлером и там указывать 1791 страничкой. Какие параметры передаются. Что такое и ещё одном метре которые нужно заверить у нас будет configure ssh провайдер — это вот кажется этот метод и так как всё будет работать смотреть. У нас есть пользователя и у нас есть страничка логин. Давайте посмотрим как — это всё выглядит сейчас вот мы допустим хотим. Ну потом видео ограничить доступ к странице со списком всех пользователей ты допустим вот эту страничку users который сейчас могут открыть все смогут открывать и получать не доступ только авторизованным пользователям автозавод суббота не через страничку логин. Натусь если мы здесь сейчас попробую что-нибудь сделать нас просто. Потому, что логин процесс у нас не объявлен Security 11. Что нужно сделать нам нужно строить так чтобы он брал вот эти данные которые посылают пользователь и доверял их с базы данных если такой польза с таким паролем и. Если есть то авторизовываться он сохранял что-нибудь в сессии или cookies какую-то передавал. И тем самым как бы приложение понимала последующих запросов если пользователь авторизован или нет — это всё будет делать sunspring. Для этого нам нужно написать. Я вот здесь затем папочку Security нам нужно реализовать оценки конечно провайдера. То есть — это класс. Ну точнее. Вернер в конце концов — это будет объект который и будет заниматься аутентификация пользователя в. Кировском, что я сейчас написал. нам нужно создать класс завоз провайдер то есть realization of equation провайдеров и он должен implemented Yet ассоциация провайдер и иметь два метода добавить аннотацию component и, что собственно нужно сделать во-первых. Саппорт и во-вторых с этим вопросом уже видели от меня туда пустят такой чисто служебный не имею. Сейчас угадано смысла, а самое интересное twenty-eight итомед принимает объектов которому который инкапсулирует в себе. Вот — это объектов никишенкова следует в себя данные аутентификации которой пользователям предоставил. Да — это его где-то есть ювелирные и пароль нам надо теперь только научиться их доставать. Давайте здесь начнём писать то есть сначала нам нужно получить email да ассоциация гетман. Да мы получаем таким образом имя пользователя после этого нам нужна поэтому имени пользователя достать пользователя из нашей базы данных посмотреть. Если там или нет для этого нужно говорить. Сюда нашей эры приготовить и за твою залипать история у нас есть там нет Fail и по имейлу достать пользователя. Теперь если этот пользователь есть то дальше будем проверять его пароль. А если его нет то сразу можно выкинуть ошибку, что как бы — это пользоваться люблю очень-очень встревать не можем потому, что мы его не нашли если мы еле нашли то кидаем много Exception username not found Exception safety специально такой и сообщение. Передаем User not found. О'кей Иначе если пользователь с таким именем есть теперь мы достаем его пароль — это автотека. Циан детка. Дэнс tostring мне — это пароль не из базы данных, а тот пароль который нам в форме передаёт и теперь нам нужно сравнить этот пароль который нам передали в форме через веб форму паролем который лежит в базе данных опять же здесь вообще конечно по науке нардепа расшифровать так далее, но пока мы всё максимально упрощают. Теперь мы сравниваем если у нас пароль который передали совпадает с паролем который. У пользователя в базе данных вернее если он.

0 комментариев
0

Читайте также