복부




가슴




어깨



다리





호흡법

수축시(힘을 줄 때) 호흡을 뱉고 이완시 호흡을 들이 마십니다.


예1) 바벨컬 : 바벨을 들어올릴때 호흡을 뱉음

예2) 스쿼트 : 일어설 때 뱉음




저작자 표시 비영리 변경 금지
신고

Leave a Comment

간단하지만 생각보다 어려운 설정 문제로 인해서 한참 고생을 했다.

Spring Security에서 기존에 있는 공통 Expression 외에 별도의 Expression을 만드려고 했는데 이게 제대로 문서도 없고 관련 예제가 있는 곳도 없다.

결국 구글링으로 만들긴 만들었다만 이 간단한 커스텀 개발을 위해서 쓴 시간이 아깝긴 하다. 막상 만들고 보니 고민거리가 있어서 실제로 쓸지도 모르겠다.


이 부분을 위해서 삽질하는 분들에게 도움이 되길 바란다.

우선 custom expression에는 2가지 종류가 있다.

메서드단에 설정하는 MethodSecurityExpression과 웹쪽에 설정하는 WebSecurityExpression이 있다. 이것을 몰라서 Method만 갖고 한참 삽질을 했다.

MethodSecurityExpression은 관련 클래스나 용어로 찾다보면 자료가 많이 있다. WebSecurityExpression이 별로 없다.





Version

  • 3.1.7을 기준으로 함
  • 3.0.7을 사용하다가 DefaultWebSecurityExpressionHandler을 상속받아서 사용할 때 원하는 메서드가 없어서 3.1.7로 올려서 사용하게 되었음
  • 3.1.7의 경우 Spring 3.0.7 Version에 대해 의존하고 있어서 다행히 문제되지 않음 ([4] 참조)



MethodSecurityExpression

  • 관련 클래스
    • DefaultMethodSecurityExpressionHandler
    • SecurityExpressionRoot
    • MethodSecurityExpressionOperations
  • 메소드쪽에 제한 설정
  • @PreAuthorize와 함께 사용



WebSecurityExpression

  • 관련 클래스
    • WebSecurityExpressionRoot
    • DefaultWebSecurityExpressionHandler
  • 웹쪽(xml or java config)에 설정
  • http intercept-url access에 설정



spring-security.xml (3.0.7의 경우)

SpringSecurity 3.0 에서는 XML 태그를 통해 웹 전반에 관한 expressionHandler 설정이 불가능

(SEC-1452 버그 참조. 3.1부터 가능.)

access-decision-manager-ref를 지정함으로써만 가능 (권남 블로그 참조)




spring-security.xml (3.1.7의 경우)



CustomWebSecurityExpressionHandler.java



CustomSecurityExpressionRoot.java




기타 참고 소스 1 - CustomMethodSecurityExpression


CustomMethodSecurityExpressionHandler.java


CustomMethodSecurityExpressionRoot.java


기타 참고 소스 2 - CustomAuthenticationToken


CustomAuthenticationToken.java


SampleCode - JaasGrandtedAuthority(3.1.7 사용 가능), SimpleGrantedAuthority(상위 버전)를 사용하거나 GrantedAuthority를 직접 구현해서 사용



Reference

[1]  16. Expression-Based Access Control (http://docs.spring.io/autorepo/docs/spring-security/3.1.x/reference/el-access.html)
[2] 권남 Spring Security (http://kwonnam.pe.kr/wiki/springframework/security)

[3] Github 참고 소스 (https://gist.github.com/bmchild/1642655)

[4] Maven Repository - spring security 3.1.7 (http://mvnrepository.com/artifact/org.springframework.security/spring-security-core/3.1.7.RELEASE)





저작자 표시 비영리 변경 금지
신고

Leave a Comment



Spring Security Reference

- Spring Security reference 3.2.10

http://docs.spring.io/spring-security/site/docs/3.2.10.RELEASE/reference/htmlsingle/html5/#what-is-acegi-security


- Hello world guide

http://docs.spring.io/spring-security/site/docs/current/guides/html5/helloworld-xml.html


- spring boot security

http://kielczewski.eu/2014/12/spring-boot-security-application/



SlideShare

- 해외 자료 (정리 잘 되어있음)

http://www.slideshare.net/analizator/spring-security-framework?qid=98031a91-6128-48f5-a8c9-fb1fda0fd93c&v=&b=&from_search=1


- 최범균님 자료 (강력 추천, 전반적인 개념 설명)

http://www.slideshare.net/madvirus/ss-36809454


- 아라한사님 자료 (예제가 상당히 좋음)

http://www.slideshare.net/meadunhansa/ss-53303729



Blog & etc

- 전반적인 스프링 시큐리티 설명과 좋은 예제를 제공

http://okky.kr/article/260408

http://zgundam.tistory.com/44


- 스프링 시큐리티 개념 & 용어 설명

http://egloos.zum.com/springmvc/v/504862


- 어떤 기술사분께서 정리한 자료, 초보자가 보기에는 좋지 않으나 핵심 그림 및 자료가 잘 정리되어 있어서 가끔 참고하기 좋음

http://www.sw-eng.kr/member/customer/Webzine/BoardView.do?

boardId=00000000000000038651&currPage=&searchPrefaceId=&titOrder=&writeOrder=&regDtOrder=&searchCondition=TOT&searchKeyword=


- Whiteship님의 총정리

http://whiteship.tistory.com/1632


기타 용어 정리

  • permission
    • 허락, 허가, 승인
    • Spring Security에서는 Authority가 유사한 형태
    • Spring security에서 쓰이는 용어는 아니지만 개념 차이를 위해 적음
  • authority
    • 권한, 재가, 인가
  • authentication
    • 입증, 증명, 인증
  • Role
    • Authority 모음 (Spring Security에서)
  • Authorization
    • 권한 부여 
  • principle(프린시플)
    • 아이디 (Spring Security에서의 뜻)
    • 원래 뜻 : 원리, 원칙, 법칙, 주의, 신조
  • Credential(크리덴셜)
    • 비밀번호 (Spring Security에서의 뜻)
    • 원래 뜻 : (사람 등의) 자질, 자격; (대사, 외교 사절 등의) 신임장
  • 부여된 권한(Granted Autority) 
  • 리소스의 권한(Intercept) 




저작자 표시 비영리 변경 금지
신고

Leave a Comment


to Top

티스토리 툴바