OAuth
별칭: OAuth · OAuth 2.0 · 소셜 로그인
다른 서비스 계정으로 로그인하거나 접근 권한을 위임하는 표준 프로토콜.
OAuth는 사용자가 Google, GitHub, Kakao 같은 외부 계정으로 로그인하거나 특정 권한을 위임할 때 쓰이는 표준이다. 수업에서는 이메일 로그인과 함께 소셜 로그인 선택지로 소개한다.
정의
OAuth는 사용자가 비밀번호를 직접 넘기지 않고 제3자 애플리케이션에 제한된 접근 권한을 위임할 수 있게 하는 표준 프로토콜이다. 실제 서비스에서는 Google, GitHub, Kakao 같은 계정으로 로그인하는 소셜 로그인 흐름에서 자주 만난다.
왜 중요한가
초보자가 로그인 기능을 만들 때 자체 비밀번호 저장부터 구현하는 것은 부담이 크다. OAuth 기반 소셜 로그인을 쓰면 사용자는 익숙한 계정으로 들어오고, 서비스는 인증 결과를 받아 사용자 ID를 관리할 수 있다.
Semiclass에서의 의미
신원 인장 단계에서는 "이메일·OAuth 로그인 1줄로 붙이기"라는 형태로 등장한다. 핵심은 OAuth 자체의 모든 흐름을 암기하는 것이 아니라, 외부 계정으로 사용자를 식별하고 그 결과를 DB 권한 정책과 연결하는 감각을 잡는 것이다.
주의할 점
OAuth는 인증과 권한 위임을 다루는 표준이지만, 서비스별 설정은 다르다. redirect URL, client ID, client secret, 허용 도메인, 배포 환경 변수를 정확히 맞춰야 한다. OAuth로 로그인했다 해도 내 데이터만 보이게 하려면 별도의 authorization/RLS 정책이 필요하다.