선언

<html xmlns:th="<http://www.thymeleaf.org>"
      xmlns:sec="<http://www.thymeleaf.org/extras/spring-security>">

html태그에 선언해두어야 sec 태그를 사용할 수 있다.

명령어들

hasRole('ROLE_ADMIN') 해당 권한이 있을 경우
hasAnyRole('ROLE_ADMIN,'ROLE_USER') 포함된 권한 중 하나라도 있을 경우
isAuthenticated() 권한에 관계없이 로그인 인증을 받은 경우
isFullyAuthenticated() 권한에 관계없이 인증에 성공했고, 자동 로그인이 비활성인 경우
isAnonymous() 권한이 없는 익명의 사용자일 경우
isRememberMe() 자동 로그인을 사용하는 경우
permitAll 모든 경우 출력함
denyAll 모든 경우 출력하지 않음

다음과 같은 명령어 들이 있다.

실제 사용 모습

<html xmlns:th="<http://www.thymeleaf.org>"
      xmlns:sec="<http://www.thymeleaf.org/extras/spring-security>">
<head>
    <meta charset="UTF-8">
    <title>메인</title>
</head>
<body>
<h1>메인페이지</h1>
<hr>
<a sec:authorize="isAnonymous()" href="/user/loginPage">로그인</a>
<a sec:authorize="isAuthenticated()" href="/user/logout">로그아웃</a>
<a sec:authorize="isAnonymous()" href="/user/signup">회원가입</a>
<a sec:authorize="hasAuthority('ADMIN') or hasAuthority('USER')" href="/user/info">내정보</a><br>
<a sec:authorize="hasAuthority('ADMIN')" href="/user/admin">admin</a><br>
</body>
</html>

이제 권한 대로 출력되는 화면을 볼수 있다.