OAuth 2.0

역할Copied!
아임웹의 OAuth2.0에서는 인증 과정을 수행할 때 다음과 같이 역할을 정의하고 있습니다.
역할 |
설명 |
---|---|
리소스 오너 (Resource Owner) |
쇼핑몰의 소유자를 의미하며 클라이언트에게 권한을 위임합니다. |
클라이언트 (Client) |
리소스 오너의 권한을 위임받아 리소스 오너의 데이터를 접근하거나 사용하는 앱입니다. |
인증 서버 (Authorization Server) |
리소스 오너의 인증을 처리하고 클라이언트에게 액세스 토큰을 발급하는 서버입니다. |
리소스 서버 (Resource Server) |
발급 받은 액세스 토큰으로 리소스 오너의 데이터를 제공하는 서버입니다. |
인가 코드 발급 요청Copied!
인가 코드 발급 요청 전에 확인해야 할 주요 사항입니다.
-
아임웹 개발자 센터에서 클라이언트 앱이 생성되어 있어야 합니다.
-
클라이언트 아이디(Client ID)와 클라이언트 시크릿(Client Secret)이 발급되어 있어야 합니다.
-
Redirect Uri와 Scope가 설정되어 있어야 합니다.
요청 형식Copied!
메서드 |
URL |
---|---|
GET |
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
responseType |
String |
code로 고정 |
O |
clientId |
String |
아임웹으로부터 발급 받은 클라이언트 ID |
O |
redirectUri |
String |
인가 코드를 전달받을 URI |
O |
scope |
String |
접근이 필요한 권한을 공백으로 구분하여 전달 |
O |
state |
String |
아임웹 OAuth2.0 인증 과정 중 동일한 값을 유지하는 임의의 문자열입니다. CSRF 공격으로부터 보호하기 위해 사용합니다. |
X |
siteCode |
String |
쇼핑몰 사이트 코드 |
O |
응답 형식Copied!
인가 코드 발급 요청의 응답은 HTTP 302로 redirectUri
의 GET
요청으로 리다이렉트 됩니다.
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
code |
String |
토큰 발급 요청 시 필요한 인가 코드 |
O |
state |
String |
요청 시 전달한 state 값과 동일한 값 |
X |
에러 코드 형식Copied!
인가 코드 발급 요청 실패 시 에러 코드와 메시지가 리다이렉트 됩니다.
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
errorCode |
String |
인가 코드 요청 실패 시 반환되는 에러 코드 |
O |
message |
String |
인가 코드 요청 실패 시 반환되는 에러 메시지 |
X |
Access Token 발급 요청Copied!
인가 코드로 토큰 발급을 요청합니다. 아임웹의 API를 사용하기 위해서는 Access Token이 필요합니다.
요청 형식Copied!
메서드 |
URL |
---|---|
POST |
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
grantType |
String |
authorization_code로 고정 |
O |
clientId |
String |
아임웹으로부터 발급 받은 클라이언트 ID |
O |
clientSecret |
String |
아임웹으로부터 발급 받은 클라이언트 앱 Secret |
O |
redirectUri |
String |
인가 코드가 리다이렉트된 URI |
O |
code |
String |
인가 코드 발급 요청으로 받은 인가 코드 |
O |
응답 형식Copied!
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
accessToken |
String |
아임웹 API 호출 시 필요한 Access Token 값 |
O |
refreshToken |
String |
토큰 재발급 시 사용되는 Refresh Token 값 |
O |
scope |
String[] |
Access Token으로 요청 가능한 권한 범위 |
O |
에러 코드 형식Copied!
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
errorCode |
String |
토큰 발급 요청 실패 시 반환되는 에러 코드 |
O |
message |
String |
토큰 발급 요청 실패 시 반환되는 에러 메시지 |
X |
Access Token 재발급 요청Copied!
요청 형식Copied!
Refresh Token으로 Access Token과 Refresh Token을 갱신합니다.
Access Token 만료 시 재발급을 해야합니다.
만약, Refresh Token도 만료되었을 경우 인가 코드 발급 요청 단계부터 다시 시작해야합니다.
메서드 |
URL |
---|---|
POST |
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
grantType |
String |
refresh_token로 고정 |
O |
clientId |
String |
아임웹으로부터 발급 받은 클라이언트 ID |
O |
clientSecret |
String |
아임웹으로부터 발급 받은 클라이언트 앱 Secret |
O |
refreshToken |
String |
토큰 발급 시 발급 받은 Refresh Token |
O |
응답 형식Copied!
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
accessToken |
String |
아임웹 API 호출 시 필요한 Access Token 값 |
O |
refreshToken |
String |
토큰 재발급 시 사용되는 Refresh Token 값 |
O |
scope |
String[] |
Access Token으로 요청 가능한 권한 범위 |
O |
에러 코드 형식Copied!
쿼리 파라미터 정보
이름 |
타입 |
설명 |
필수 |
---|---|---|---|
errorCode |
String |
토큰 발급 요청 실패 시 반환되는 에러 코드 |
O |
message |
String |
토큰 발급 요청 실패 시 반환되는 에러 메시지 |
X |
Token 유효기간Copied!
Access Token
-
아임웹의 Access Token 유효 시간은 2시간입니다.
Refresh Token
-
아임웹의 Refresh Token 유효 시간은 90일입니다.