본문 바로가기

Spring/Spring Security

(5)
Spring Security 동적 권한 할당 Spring Security RBAC 모델의 멋진 권한 컨트롤 시큐어 프레임웍임니다.이에 이녀석을 가지고 동적 권한 할당에 대해 예전에도 생각해 본적이 있었 습니다. 내용은 관리자가 환경설정에서 PERMISSON을 수정하여, 접속된 사용자에게도 바로 적용되는 것입니다. 접속된 사용자 별로 SecurityContext에서 Authority 객체에 접근하여, 생성한 GrantedAuthority를 restset하고 새롭게 부여해주는방법과.로그인 할때 GrantedAuthority 없이 항시 urlCall 혹은 methdo 호출 마다 어떤 필터에서 이미 정의된 ROLE ,url을 이용해서 DB에 값을 확인하고 통과 시켜주는 방법입니다. 첫번째 방법은 사용자가 많은 경우 모든 사용자의 권한을 새롭게 부여해줘야 ..
Spring security Session name 은 어느곳에? 스프링 시큐리티를 사용하여 로그인 모듈생성시, 시큐리티에서는 세션 이름을 무엇으로 만들까 확인하고 싶다.실제 세션을 만들어주는 SecurityContextPersistenceFilter 필터 안에 HttpSessionSecurityContextRepository 에 들어 있다.좀더 자세한 필터 내역을 확인 하시려면, 필터도 여러개가 있고, 각 동작하는 필터마다 의미가 다르기때문에 필터에 관한 내역으로 검색해 보길 권합니다. /////////////////////////////////////////////////////////////////////////// 세션 상세 정보 확인////////////////////////////////////////////////////////////////////////..
Spring Security logout Handler custom 스프링시큐리티 구조를 이해 하기에 앞서http://www.slideshare.net/madvirus/ss-36809454 이 자료를 읽어보면 많은 도움이 될거에요. 지금은 logout custom 을 하기위한 작업으로 SimpleUrlLogoutSuccessHandler을 상속 받아 사용 하기로 한다. security.xml @Componentpublic class MyLogoutSuccessHandler extends SimpleUrlLogoutSuccessHandler { @Override public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) th..
Spring Security Session 제어 Spring Security 의 Session 당연히 우리는 web.xml 에 이녀석을 통해 session 설정을 한다. 하지만 간혹 세션 설정을 할 수 있기를 바라는 사람들이 있는데 일반 적인 프로그래밍으로는 ... request.getSession().setMaxInactiveInterval( second time) ... 이렇게 사용 할 수 있다. Security 도 별다른건 없다. 로그인 성공시 사용되는 핸들러인 SavedRequestAwareAuthenticationSuccessHandler 를 상속 받아 다음과 같이 구현 하도록 한다. @Service public class AuthLoginSuccessHandler extends SavedRequestAwareAuthenticationSucc..
Spring Security CSRF / filter / muiltipart-form 일단 사용하기에 앞서 Spring Security 사용방법과 CSRF 에 대해 알아야 할것이다. 이곳 링크를 통해 확인해 보기 바란다. 링크... Spring Security CSRF 적용을 위해서는 사용중인 스프링과 시큐리티 버전을 확인해보기 바란다. 스프링 시큐리티는 3.2.0 버전 부터 사용 할 수 있고, 지금 여기서는 JAVA Configration 이 아닌 XML 설정과 이후 처리 방법에 대해 알아 보겠다. Security-config.xml 위와 같이 사용중인 곳에 를 적어 선언함으로 사용 가능 하다. 자이제 Tag를 넣었으니 잘 동작하겠지? 하지만 현실은 그렇치 않다. 사용중인 form 전송마다 다음과 같은 테크를 넣어 줌으로 csrf Token 인증을 수행한다. (Spring Tag 를 사..