OAuth 2.0 PKCE가 뭔가요? 왜 필요한 건가요?
PKCE(Proof Key for Code Exchange)는 OAuth 2.0의 Authorization Code 플로우를 더 안전하게 만드는 확장입니다.
왜 필요한가: SPA나 모바일 앱은 client_secret을 안전하게 저장할 수 없습니다. PKCE는 secret 없이도 안전한 인증을 제공합니다.
흐름:
code_verifier
code_challenge = SHA256(code_verifier)
code_challenge
중간에 인가 코드를 탈취해도 code_verifier가 없으면 토큰을 받을 수 없습니다. 2023년 기준 SPA/모바일에서 PKCE는 필수입니다.
댓글 1
PKCE(Proof Key for Code Exchange)는 OAuth 2.0의 Authorization Code 플로우를 더 안전하게 만드는 확장입니다.
왜 필요한가: SPA나 모바일 앱은 client_secret을 안전하게 저장할 수 없습니다. PKCE는 secret 없이도 안전한 인증을 제공합니다.
흐름:
code_verifier생성code_challenge = SHA256(code_verifier)계산code_challenge전송code_verifier전송중간에 인가 코드를 탈취해도 code_verifier가 없으면 토큰을 받을 수 없습니다. 2023년 기준 SPA/모바일에서 PKCE는 필수입니다.