Overview
올바른 경기 관람 문화에 기여하는 이곳, ORI TICKET
많은 공연이나 경기 관람에 있어 티켓의 정가 보다 월등히 비싼 암표 거래를 막을 방법이 없을까?
거래 사기 피해를 방지하며 거래의 투명성을 확보 및 불공정 거래를 최소화 하는 방법은 없을까?
ORI_TICKET 은
올바른 관람 문화를 위해 경기 티켓을 정가 이하로 거래하는 애스크로 플랫폼입니다.
부득이하게 티켓팅을 놓친 당신, 정가 이하로 티켓을 구매해 보세요!
늘어나는 관람 수요와 매크로로 인한 무분별한 티켓팅으로 인한 스트레스를 줄여보아요!
허위 매물과 터무니 없는 가격의 암표 걱정에 보고 싶었던 경기 관람을 놓치지 마세요!
깜빡하거나 일상에 치여 관람 티켓을 구매하지 못하였더라도 정가 이하의 기회가 당신을 기다립니다.
관람 티켓을 구매하였는데 피치 못할 사정이 생겨 사용하지 못하게 되었지만 올바른 관람 문화와 공정한 가격의 거래를 추구하는 당신은 멋쟁이, 정가 이하로 티켓을 판매해 보세요!
Project
프로젝트 아키텍쳐
ERD
주요 기능
function
Search
OAuth 란
위키백과 정의에 따르면, OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준입니다. 사용자가 애플리케이션에게 모든 권한을 넘기지 않고 사용자 대신 서비스를 이용할 수 있게 해주는 HTTP 기반의 보안 프로토콜 입니다.
OAuth 에서 Auth는 Authentication(인증) & Authorization(허가) 2가지 의미를 포함하고 있습니다. 예를 들어 ‘서비스 제공자를 대신하여 제 3자가 어떤 정보를 사용하도록 접근을 허용하겠는가?’ 라는 물음을 보신적이 있으실 겁니다. 여기서 제 3자는 여러분들이 이용 할 서비스 입니다. 이 물음에 동의하면, 먼저 서비스 제공자에게 자신을 인증하고 제 3자에게 자신의 정보를 사용하도록 접근 권한을 부여 하는 것입니다.
OAuth 로 인해 사용자 입장에서는 더욱더 여러 서비스들을 하나의 계정으로 관리할 수 있게되어 편해지고 개발자 입장에서는 민감한 사용자 정보를 다루지 않아 위험 부담이 줄고 서비스 제공자로 부터 사용자 정보를 활용 할 수 있기 때문에 장점이 상당히 많습니다.
OAuth2 역할
OAuth2 설계도 이미지 출처 - http://blogs.innovationm.com/spring-security-with-oauth2/
위 이미지를 보시면, 총 4가지 역할로 구분 할 수 있습니다.
자원 소유자 (Resource Owner)
자원 서버 (Resource Server)
인가 서버 (Authorization Server)
클라이언트 (Client)
Resource Server 와 Authorization Server 를 구축한 대상을 Provider 라고 부르기도 합니다.
OAuth2.0 소셜로그인
트러블 슈팅
트러블슈팅
Search
오류 발생
원인
localhost/:1 Access to XMLHttpRequest at 'https://oriticket.link/posts/search' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
•
클라이언트와 서버 간의 보안 정책에 관련된 것으로, 서버 측에서 적절한 CORS 헤더를 설정해야 합니다.
•
Access-Control-Allow-Origin 헤더를 포함하여 어떤 출처의 요청을 허용할지 지정해, 브라우저는 이 헤더를 확인하여 요청이 허용되었는지 판단하고 허용된 경우에만 리소스에 접근합니다.
•
CORS 메커니즘은 안전한 원본 간 요청과 브라우저와 서버 간의 데이터 전송을 지원합니다. 브라우저는 교차 출처 HTTP 요청의 위험을 완화하기 위해 fetch()또는 같은 API에서 CORS를 사용합니다 .
해결 방법
CorsFilter 추가 후 Access-Control-Allow-Origin 헤더에 프론트 분들이 사용하는 도메인을 작성해 주었다.
참고
CORS 에러