Re: [KSUG] 스프링시큐리티에서 로그인한후 로그인페이지 다시 접속하는 경우..

1,081 views
Skip to first unread message
Message has been deleted

이용구

unread,
Aug 19, 2014, 11:03:01 PM8/19/14
to ks...@googlegroups.com
security 를 사용하시구요
access 권한을 Anonymous도 같이 주시면 됩니다.



2014-08-20 9:57 GMT+09:00 Jay J. <calli...@gmail.com>:

로그인을 한 후에 /login, /register 경로로 접근을 하면 다시 로그인이나 가입화면이 보입니다. 

이미 로그인하여 인증된 상태에서는 /login, /register에 접근하려고 할때 /index페이지로 튕기도록 하고 싶거든요.

그래서 예를들어 로그인화면에 접속하면 로그인컨트롤러에서 아래와 같이 인증정보를 가져와서 인증됐으면 리다이렉트를 하려고 했는데.. null이 나옵니다.

Authentication auth = SecurityContextHolder.getContext().getAuthentication(); 

/login, /register를 제외한 페이지에서는 모두 값이 잘 나오는데.. 유독 두 페이지에서만 값이 널이 나오는데요.


security-context.xml에 아래와 같이 설정하였습니다.

로그인할때와 가입할때의 경우는 스프링시큐리티로 인증이 필요 없어도 접근해야 되기 때문에 security="none"으로 설정했습니다.

<http pattern="/login" security="none"></http>

<http pattern="/register" security="none"></http>

<http auto-config="true" use-expressions="true" access-denied-page="/login?denied=true">

<intercept-url pattern="/admin" access="hasRole('ROLE_ADMIN')" />

<intercept-url pattern="/admin/*" access="hasRole('ROLE_ADMIN')" />

<intercept-url pattern="/*" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />


<session-management invalid-session-url="/login?msg=invalidSession">

<concurrency-control max-sessions="1" />

</session-management>

<form-login login-page="/login"

default-target-url="/index" always-use-default-target="false"

login-processing-url="/j_spring_security_check"

  authentication-success-handler-ref="loginSuccessHandler"

authentication-failure-url="/login?msg=loginFail" />

<logout logout-success-url="/login?msg=logout" />

<form-login/>

</http>




로그인컨트롤러와 가입컨트롤러에서도 인증상태를 체크하고 싶은데.. 어떻게 하면 좋을지 궁금합니다..

--
이 메일은 Google 그룹스 'Korea Spring User Group Q&A' 그룹에 가입한 분들에게 전송되는 메시지입니다.
이 그룹에서 탈퇴하고 더 이상 이메일을 받지 않으려면 ksug+uns...@googlegroups.com에 이메일을 보내세요.
http://groups.google.com/group/ksug에서 이 그룹을 방문하세요.
웹에서 이 토론을 보려면 https://groups.google.com/d/msgid/ksug/8a0667c2-7cd8-48d0-b399-3013d549774e%40googlegroups.com을(를) 방문하세요.
더 많은 옵션을 보려면 https://groups.google.com/d/optout을(를) 방문하세요.



--
- Koo Lee
Reply all
Reply to author
Forward
0 new messages