일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Golines
- GoF 디자인패턴
- Intellij
- AWS Infra
- System Design
- notification system
- 디자인패턴
- golang
- UnBuffered channel
- AWS
- 컴포지트패턴
- GoF
- tenneling
- Buffered channel
- apollo router
- http 413
- Kubernetes
- 배포 파이프라인
- Logrus
- 배포 프로세스
- 대규모 시스템 설계
- intellij ide
- Helm V3
- Bastion Server
- gitops
- go
- 윈도우키보드
- body size
- Infra
- goland
Archives
- Today
- Total
Fall in IT.
Spring 에서 크로스도메인 이슈 CORS로 해결하기 본문
안녕하세요.
오늘은 웹개발시에 빈번하게 발생하는 크로스 도메인 이슈(Cross-origin Http)에 대해서 알아보겠습니다.
또한, 스프링 프레임워크에서 @CrossOrigin 어노테이션을 사용하여 문제를 해결하는 방법에 대해서 알아보겠습니다.
크로스도메인 이슈란?
- 웹 브라우저에서 Ajax 등을 통해 다른 도메인의 서버에 url(data)를 호출할 경우, 나타나는 보안문제를 말합니다.
(만약, 내가 만든 웹서비스에서 사용하기 위한 rest api 서버를 다른 도메인에서 접근하여 사용한다면, 보안상 문제가 될 수 있습니다.)
크로스도메인 이슈 해결방법
- 서버측에서 크로스도메인을 허용하여 문제를 해결하는 방식
- 클라이언트측에서 크로스도메인을 해결하는 방식
(서버측에서 크로스도메인 설정하여 문제를 해결하는 것이 표준화된 방법 입니다.)
CORS란?
- CORS(Cross-origin resource sharing)이란, 웹 페이지의 제한된 자원을 외부 도메인에서 접근을 허용해주는 메커니즘입니다.
스프링에서 CORS 설정하는 방법
- 스프링 RESTful Service에서 CORS를 설정은 @CrossOrigin 어노테이션을 사용하여 간단히 해결 할 수 있습니다.
- RestController를 사용한 클래스 자체에 적용할 수 도 있고, 특정 rest api method에도 설정 가능합니다.
- 또한, 특정 도메인만 접속을 허용할 수도 있습니다.
- @CrossOrigin(origins = "허용주소:포트")
참고자료
- 스프링에서 RESTful Web Service 사용시, 크로스도메인 이슈 해결방법
- https://spring.io/guides/gs/rest-service-cors/ - Cross-origin resource sharing 설명
- https://en.wikipedia.org/wiki/Cross-origin_resource_sharing
'프레임워크 > Spring Boot' 카테고리의 다른 글
스프링 프레임워크 Spring Boot 프로젝트 생성 법. (0) | 2016.03.31 |
---|
Comments