3.5.1 스프링 시큐리티 관련하여 질문 좀 드리겟습니다.
- 작성자 :
- 김*현
- 작성일 :
- 2016-01-21 10:19:20
- 조회수 :
- 1,512
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
수고가 많으십니다
전자정부 프레임워크의 스프링 시큐리티 보던중에 의문이 생겨 몇가지 질문좀 드리겠습니다
1. 권한에 롤 부여시... 해당 권한의 id로 접속해도 바로 적용이 안되고 서버 리붓이 필요한데..
리부팅 없이 가능한 방법이 있는지요?
2. 롤 하이라키가 아래 와 같은때
ROLE_ADMIN > ROLE_USER_MEMBER > 사용자등록권한 > 메뉴등록권한 > ROLE_ANONYMOUS
메뉴 등록권한은 사용자 등록권한의 모든기능을 가질수 있습니다.
이때 사용자 등록권한 따로 메뉴 등록권한 따로... 하이라키의 구조를 벗어나
각각의 권한이 되도록 할 수 있는지요?
3. 시큐리티 설정 xml 파일에서 roleHierarchyString 이 아래 2경우 일때 차이점이 무엇인지요?
- 유형1
roleHierarchyString="
ROLE_ADMIN > ROLE_USER_MEMBER > ROLE_ANONYMOUS > IS_AUTHENTICATED_FULLY
IS_AUTHENTICATED_FULLY > IS_AUTHENTICATED_REMEMBERED
IS_AUTHENTICATED_REMEMBERED > IS_AUTHENTICATED_ANONYMOUSLY"
- 유형2
roleHierarchyString="ROLE_ADMIN > ROLE_USER_MEMBER > ROLE_ANONYMOUS"
답변 부탁드리겠습니다
수고하십시오.
전자정부 프레임워크의 스프링 시큐리티 보던중에 의문이 생겨 몇가지 질문좀 드리겠습니다
1. 권한에 롤 부여시... 해당 권한의 id로 접속해도 바로 적용이 안되고 서버 리붓이 필요한데..
리부팅 없이 가능한 방법이 있는지요?
2. 롤 하이라키가 아래 와 같은때
ROLE_ADMIN > ROLE_USER_MEMBER > 사용자등록권한 > 메뉴등록권한 > ROLE_ANONYMOUS
메뉴 등록권한은 사용자 등록권한의 모든기능을 가질수 있습니다.
이때 사용자 등록권한 따로 메뉴 등록권한 따로... 하이라키의 구조를 벗어나
각각의 권한이 되도록 할 수 있는지요?
3. 시큐리티 설정 xml 파일에서 roleHierarchyString 이 아래 2경우 일때 차이점이 무엇인지요?
- 유형1
roleHierarchyString="
ROLE_ADMIN > ROLE_USER_MEMBER > ROLE_ANONYMOUS > IS_AUTHENTICATED_FULLY
IS_AUTHENTICATED_FULLY > IS_AUTHENTICATED_REMEMBERED
IS_AUTHENTICATED_REMEMBERED > IS_AUTHENTICATED_ANONYMOUSLY"
- 유형2
roleHierarchyString="ROLE_ADMIN > ROLE_USER_MEMBER > ROLE_ANONYMOUS"
답변 부탁드리겠습니다
수고하십시오.
A
안녕하세요. 표준프레임워크센터입니다.
1. 권한에 롤 부여시... 해당 권한의 id로 접속해도 바로 적용이 안되고 서버 리붓이 필요한데..
리부팅 없이 가능한 방법이 있는지요?
//그와 관련하여 메소드를 제공하고 있습니다. 개별 컨트롤러에서 자원이나 권한 저장 하는 로직 후에 databaseSecurityMetadataSource.reload(); 호출하시면 됩니다.
2. 롤 하이라키가 아래 와 같은때
ROLE_ADMIN > ROLE_USER_MEMBER > 사용자등록권한 > 메뉴등록권한 > ROLE_ANONYMOUS
메뉴 등록권한은 사용자 등록권한의 모든기능을 가질수 있습니다.
이때 사용자 등록권한 따로 메뉴 등록권한 따로... 하이라키의 구조를 벗어나
각각의 권한이 되도록 할 수 있는지요?
//말씀하시는 형태로 사용 가능합니다. 대신 프레임워크에서 제공하는 간소화설정을 사용하시면 안되고
별도의 커스터마이징이 필요합니다. 죄송스럽게도 정책상 저희 센터에서는 직접적으로 커스터마이징 하는 방법에 대한 가이드를 제공하지 않으나, 외부 블로그 중 security 관련 정리가 잘 되어있는 부분이 있으니 전체적으로 읽어 보시고 참고가 되셨으면 합니다.
http://zgundam.tistory.com/50
3. 시큐리티 설정 xml 파일에서 roleHierarchyString 이 아래 2경우 일때 차이점이 무엇인지요?
//계층권한 설정 범위의 차이입니다.
기본적으로 IS_AUTHENTICATED_FULLY, IS_AUTHENTICATED_REMEMBERED, IS_AUTHENTICATED_ANONYMOUSLY
해당 권한은 시큐리티에서 제공하는 권한으로 각각의 권한의 범위는 아래와 같습니다.
IS_AUTHENTICATED_FULLY : 새로운 사용자 아이디와 비밀번호가 입력된 경우 접근을 승인한다.
IS_AUTHENTICATED_REMEMBERED : 사용자가 remember me 기능을 사용해 인증한 경우 접근을 승인한다.
IS_AUTHENTICATED_ANONYMOUSLY : 사용자가 익명 사용자인 경우 접근을 승인한다
유형 1의 경우 이러한 설정들을 포함한 계층권한 관리의 기능들을 사용하기 위한 설정입니다.
유형 2의 경우 최소한의 권한 설정을 위한 간소화 설정으로 생각하시면 됩니다.
감사합니다.
1. 권한에 롤 부여시... 해당 권한의 id로 접속해도 바로 적용이 안되고 서버 리붓이 필요한데..
리부팅 없이 가능한 방법이 있는지요?
//그와 관련하여 메소드를 제공하고 있습니다. 개별 컨트롤러에서 자원이나 권한 저장 하는 로직 후에 databaseSecurityMetadataSource.reload(); 호출하시면 됩니다.
2. 롤 하이라키가 아래 와 같은때
ROLE_ADMIN > ROLE_USER_MEMBER > 사용자등록권한 > 메뉴등록권한 > ROLE_ANONYMOUS
메뉴 등록권한은 사용자 등록권한의 모든기능을 가질수 있습니다.
이때 사용자 등록권한 따로 메뉴 등록권한 따로... 하이라키의 구조를 벗어나
각각의 권한이 되도록 할 수 있는지요?
//말씀하시는 형태로 사용 가능합니다. 대신 프레임워크에서 제공하는 간소화설정을 사용하시면 안되고
별도의 커스터마이징이 필요합니다. 죄송스럽게도 정책상 저희 센터에서는 직접적으로 커스터마이징 하는 방법에 대한 가이드를 제공하지 않으나, 외부 블로그 중 security 관련 정리가 잘 되어있는 부분이 있으니 전체적으로 읽어 보시고 참고가 되셨으면 합니다.
http://zgundam.tistory.com/50
3. 시큐리티 설정 xml 파일에서 roleHierarchyString 이 아래 2경우 일때 차이점이 무엇인지요?
//계층권한 설정 범위의 차이입니다.
기본적으로 IS_AUTHENTICATED_FULLY, IS_AUTHENTICATED_REMEMBERED, IS_AUTHENTICATED_ANONYMOUSLY
해당 권한은 시큐리티에서 제공하는 권한으로 각각의 권한의 범위는 아래와 같습니다.
IS_AUTHENTICATED_FULLY : 새로운 사용자 아이디와 비밀번호가 입력된 경우 접근을 승인한다.
IS_AUTHENTICATED_REMEMBERED : 사용자가 remember me 기능을 사용해 인증한 경우 접근을 승인한다.
IS_AUTHENTICATED_ANONYMOUSLY : 사용자가 익명 사용자인 경우 접근을 승인한다
유형 1의 경우 이러한 설정들을 포함한 계층권한 관리의 기능들을 사용하기 위한 설정입니다.
유형 2의 경우 최소한의 권한 설정을 위한 간소화 설정으로 생각하시면 됩니다.
감사합니다.