Categories: 정보관리기술사

제135회 정보관리기술사 1교시 6번 — OAuth 2.0 Authorization Code Flow와 PKCE

정보관리기술사 · 135회 1교시 · 6번 · 배점 10점

제135회 정보관리기술사 1교시 6번

단답형 | 10점
[문제] OAuth 2.0의 권한 부여 코드 흐름(Authorization Code Flow)을 단계별로 설명하고, PKCE(Proof Key for Code Exchange)가 필요한 이유와 동작 방식을 서술하시오.

1. OAuth 2.0 Authorization Code Flow

단계 설명
① 권한 요청 클라이언트가 사용자를 Authorization Server로 리다이렉트 (scope, redirect_uri, state 포함)
② 사용자 동의 사용자가 로그인·권한 동의 → Authorization Code 발급
③ 코드 교환 클라이언트가 Authorization Code + Client Secret으로 Token Endpoint에 Access Token 요청
④ 토큰 사용 Access Token으로 Resource Server API 호출
⑤ 갱신 Refresh Token으로 Access Token 재발급 (만료 시)

2. PKCE (Proof Key for Code Exchange)

필요성: 모바일·SPA 앱은 Client Secret을 안전하게 저장할 수 없어 Authorization Code 가로채기 공격에 취약하다. PKCE는 이를 방지한다.

동작 방식:

  • Code Verifier: 클라이언트가 랜덤 문자열 생성 (43~128자)
  • Code Challenge: Code Verifier의 SHA-256 해시값 → Base64URL 인코딩
  • 권한 요청 시 Code Challenge 전송, 토큰 요청 시 Code Verifier 전송
  • Authorization Server가 Code Challenge == SHA-256(Code Verifier) 검증

효과: Authorization Code를 가로채도 Code Verifier 없이는 Access Token 획득 불가

핵심 키워드: OAuth 2.0, Authorization Code, PKCE, Code Verifier, Code Challenge, Refresh Token, SPA, 모바일 보안
OAuth 2.0 Authorization Code Flow는 서버 측 Secret 보호를 전제로 하며, PKCE는 Public Client(SPA·모바일)에서 코드 가로채기 공격을 방지하는 필수 보안 확장이다. RFC 7636으로 표준화되었다.

zerg96

Recent Posts

요양원 선택 전 반드시 확인해야 할 것들, 부모님 맡기기 전에 보세요

요양원 선택 전 반드시 확인해야 할 체크리스트를 공개합니다. 공식 평가 자료 조회법, 방문 시 확인…

2일 ago

공공기관 채용 비리, 내부에서 터져나온 충격 증언

공공기관 채용 비리의 실태와 피해 지원자의 대응법을 정리했습니다. 채용 비리 신고 방법, 공익신고자 보호제도, 취준생…

2일 ago

주식 손실 났을 때 세금 줄이는 방법, 아는 사람만 씁니다

주식 손실을 세금 절약에 활용하는 합법적 방법을 공개합니다. 해외주식 손익통산, ISA 계좌 활용, 연금계좌 절세까지…

2일 ago

음식 배달 늦으면 소비자가 취소할 수 있다, 몰랐던 권리

배달이 예상 시간보다 크게 늦으면 취소·환불을 요청할 수 있습니다. 배달앱별 지연 취소 방법과 잘못 배달됐을…

2일 ago

휴대폰 요금제 바꾸면 연 수십만원 절약, 지금 내 요금제 확인하세요

통신비 절약의 핵심은 요금제 최적화입니다. 내 데이터 사용량 확인법, 알뜰폰 전환 비교, 위약금 없이 요금제…

2일 ago

퇴직금 못 받았다면, 지금 당장 이렇게 하세요

퇴직 후 퇴직금을 받지 못했다면 즉시 노동부에 신고하세요. 지급 기한, 자격 요건, 신고 방법, 소액체당금…

2일 ago