DevToolPal
한국어
4xx 클라이언트 오류

401 Unauthorized

인증 필요

의미

요청에 유효한 인증 정보가 없습니다. 이름은 Unauthorized지만 실제 의미는 "인증되지 않음"으로, 로그인하거나 유효한 토큰을 보내야 합니다.

흔한 원인

  • Authorization 헤더 누락
  • 만료되었거나 폐기된 토큰
  • 잘못된 사용자 이름, 비밀번호, API 키

해결 방법

클라이언트 또는 방문자라면

WWW-Authenticate 헤더가 요구하는 형식으로 자격 증명을 보내고, 만료된 토큰을 갱신하며, 오타나 다른 환경의 키가 아닌지 확인하세요.

사이트나 API 운영자라면

401에는 항상 WWW-Authenticate 헤더를 포함하세요. 인증은 되었지만 권한이 없으면 403을 쓰세요.

응답 예시

HTTP/1.1
HTTP/1.1 401 Unauthorized
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
WWW-Authenticate: Bearer realm="api", error="invalid_token"
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Unauthorized",
  "status": 401,
  "detail": "The access token expired."
}

명세

RFC 9110 §15.5.2

자주 묻는 질문

› 401과 403의 차이는?

401: 누구인지 모르니 인증하세요. 403: 누구인지는 알지만 이 작업은 허용되지 않습니다.

› 로그인 직후 401이 나는 이유는?

대개 토큰이 요청에 붙지 않았거나(자격 증명 없는 CORS, 잘못된 헤더 이름) 시계 차이로 만료된 것처럼 보이기 때문입니다.