OAuth 2.0으로 보호되는 API에 접근하기
OAuth 2.0은 사용자가 보안과 유연성을 보장하면서도 반복적인 자격 증명 입력 없이 제3자 애플리케이션에 자신을 대신하여 서비스에 접근할 수 있는 권한을 부여하도록 하는 인증 프레임워크입니다.이 가이드에서는 Google 계정 로그인을 실제 예시로 사용하여 Apidog에서 OAuth 2.0 API를 디버그하는 방법을 설명합니다.OAuth 2.0 흐름 이해하기#
일반적인 OAuth 2.0 시나리오에서는 다음과 같습니다.클라이언트: 사용자의 웹사이트 또는 애플리케이션
권한 부여 서버: 인증을 제공하는 서비스(예: Google)
리소스 서버: 보호된 리소스를 호스팅하는 서비스
사전 준비 사항#
OAuth 2.0 API를 테스트하기 전에 다음을 준비했는지 확인하십시오.권한 부여 서버에 등록된 OAuth 클라이언트(예: Google API Console Project)
클라이언트 ID 및 클라이언트 보안 비밀 자격 증명
Google API Console Project를 등록하지 않으셨다면, 공식 문서를 참조하여 새 OAuth 클라이언트를 생성하십시오. OAuth 2.0 권한 부여 흐름#
1단계: 사용자 권한 부여 요청#
사용자가 "Sign in with Google" 버튼을 클릭하면, 사용자의 웹사이트는 사용자의 Google 계정에 접근할 권한을 얻기 위해 Google 의 OAuth 2.0 권한 부여 서버로 요청을 보냅니다.권한 부여 요청은 다음 매개변수와 함께 https://accounts.google.com/o/oauth2/v2/auth/로 전송됩니다.| 매개변수 | 필수 여부 | 설명 |
|---|
client_id | 필수 | API Console Credentials 페이지에서 가져온 애플리케이션의 클라이언트 ID |
redirect_uri | 필수 | 권한 부여 후 API 서버가 사용자를 리디렉션하는 위치입니다. OAuth 2.0 클라이언트 구성의 승인된 리디렉션 URI 중 하나와 정확히 일치해야 합니다. |
response_type | 필수 | 웹 서버 애플리케이션이 권한 부여 코드를 받도록 code로 설정합니다. |
scope | 필수 | 애플리케이션이 사용자를 대신하여 접근할 수 있는 리소스를 식별하는 공백으로 구분된 범위 목록입니다. |
access_type | 권장 | online(기본값) 또는 offline입니다. 사용자가 없는 상태에서 애플리케이션이 액세스 토큰을 갱신해야 하는 경우 offline을 사용하십시오. |
state | 권장 | 권한 부여 요청과 권한 부여 서버의 응답 사이에서 상태를 유지하기 위한 임의의 문자열 값입니다. |
이 표는 Google OAuth 2.0에 필요한 기본 매개변수를 보여줍니다. 사용자 경험과 보안을 사용자 지정하기 위해 사용할 수 있는 다른 선택적 매개변수도 많이 있습니다. 전체 세부 정보는 공식 문서를 참조하십시오. 2단계: 사용자가 권한 부여 승인#
Google은 지정된 리소스에 접근할 권한을 요청하는 동의 화면을 표시합니다.사용자가 승인함: Google이 사용자의 웹 서버로 권한 부여 토큰을 보냅니다.
사용자가 거부함: Google이 사용자의 웹 서버로 오류 메시지를 보냅니다.
3단계: 권한 부여 코드를 액세스 토큰으로 교환#
사용자가 권한을 부여하면 권한 부여 코드가 응답에 포함됩니다. 응답은 쿼리 문자열에 표시됩니다.# Error response
http://example.com/#error=access_denied&state=state_parameter_passthrough_value
# Success response
http://example.com/#state=state_parameter_passthrough_value&access_token=***&token_type=Bearer&expires_in=***&scope=email%20https://www.googleapis.com/auth/userinfo.email%20openid&authuser=0&prompt=consent
다른 Google API 서비스에서 사용하기 위해 URL에서 액세스 토큰을 추출하십시오.4단계: 보호된 리소스에 접근#
Openidconnect API를 예로 들면, 액세스 토큰과 함께 요청을 보내 사용자의 Google 계정 정보에 접근 할 수 있습니다.1.
Apidog 프로젝트에서 새 요청을 생성합니다.
2.
URL을 사용합니다: https://openidconnect.googleapis.com/v1/userinfo?access_token=ACCESS_TOKEN
3.
ACCESS_TOKEN을 실제 토큰으로 바꿉니다.
5단계: 사용자 정보 수신#
Google은 액세스 토큰의 유효성을 확인하고 연결된 승인된 클라이언트를 확인합니다.유효한 토큰: Google이 사용자 정보로 응답합니다.
유효하지 않거나 만료된 토큰: Google이 오류 메시지로 응답합니다.
API 응답은 picture 및 email과 같은 사용자의 Google 계정 정보를 포함하는 JSON 객체입니다. 사용자의 웹사이트는 이 데이터를 사용하여 수동 입력 없이 사용자 프로필을 자동으로 표시할 수 있습니다.OAuth 2.0 테스트에 Apidog를 사용할 때의 이점#
Apidog를 사용하여 OAuth 2.0 API를 디버그하면 다음을 얻을 수 있습니다.업스트림 및 다운스트림 프로세스에 필요한 매개변수에 대한 명확한 가시성
시각적 매개변수 관리를 통한 최적화된 개발 경험
Apidog에서 전체 워크플로가 성공적으로 실행되면, 백엔드 개발자는 개발 중에 별도로 검증할 필요 없이 비즈니스 프로세스를 완료하기 위한 코드를 자신 있게 작성할 수 있습니다.참고 자료#
📄 예시 웹 페이지 소스 코드
Modified at 2026-06-09 08:53:32