WEBBOOK CHAPTER

기능이 아니라 경계를 지키는 웹 보안: 5장. OAuth·OIDC는 로그인 버튼이 아니다

5장. OAuth·OIDC는 로그인 버튼이 아니다

authorization code와 PKCE, state, OIDC nonce, redirect URI exact match, issuer·audience·signature·expiry를 검증한다. provider 이메일이 항상 소유권과 동일하다고 가정하지 않는다. account linking과 unlink, provider 장애, 탈퇴, 재가입 정책을 설계한다.

callback 오류에 token이나 code를 log하지 않는다. 여러 provider 계정이 한 내부 계정으로 합쳐지는 조건은 사용자에게 명확히 확인한다. 실제 console 설정과 provider 정책은 변경될 수 있으므로 배포 전 공식 문서를 다시 본다.