WebSecurityConfig
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
DataSource dataSource;
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/register").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.jdbcAuthentication()
.dataSource(dataSource)
.passwordEncoder(NoOpPasswordEncoder.getInstance())
.usersByUsernameQuery("select email, password from user where email=?")
.authoritiesByUsernameQuery("select u.email, ur.permissions from user u inner join user_permission ur on u.id = ur.user_id where u.email=?");
}
}
login.html
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org">
<head>
<title>Авторизация</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<div th:if="${param.error}">
Ошибка
</div>
<div th:if="${param.logout}">
Выход из аккаунта - успешно!
</div>
<div class="content">
<form th:action="@{/login}" method="post">
<div><label> Email: <input type="text" name="email"/> </label></div>
<div><label> Пароль: <input type="text" name="password"/> </label></div>
<div><input type="submit" value="Sign In"/></div>
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}" />
</form>
<a href="register">Рег. аккаунта</a>
</div>
</body>
</html>
Регистрация аккаунта проходит, все в базу забивается Но при логине получается ошибка. login?error
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
У меня есть массив arrЯ хочу сделать так, чтобы если я вводил с клавиатуры 321234, то массив был таким arr = [3, 2, 1, 2, 3, 4]
ВводнаяЯ студент (читать как "беспросветный дурачок") и передо мной встала задача - написать программу, которая бы читала и писала файлы XML
Был на тестировании по Java и столкнулся со следующей задачей
Я добавляю всплывающую подсказку для счетчика и хочу установить фиксированное местоположение для нееДелаю это так: