티스토리 뷰

이전에 인증과 인가에 대한 글을 작성한 적이 있다.

근데 이와 관련해 TMI이면서 추가적인 내용을 작성해놓고 싶어 이 글을 적는다.

 


 

이전 인증/인가 글을 적으면서 인증(Authentication)과 인가(Authorization)에 대한 개념은 정립했었다.

근데 여러 공식문서를 읽다보니 Authentication, Authorization 대신 AuthN, AuthZ가 많이 사용되고 있었다.

처음엔 이게 뭐지... 했는데 사실 별거 아니였다. 단어가 그냥 길어서 축약해서 사용하는건데, 아래처럼 이해하면 된다.

  • Authe n tication - AuthN
  • Authori z ation - AuthZ

 


 

인증/인가 API를 구현하면서 인증/인가에 실패했을 경우, Http status를 어떻게 반환할까 고민을 했던 적이 있다.

많이들 아래처럼 구현한다.

  • 인증(AuthN) 실패 시: 401 (Unauthorized)
  • 인가(AuthZ) 실패 시: 403 (Forbidden)

 

근데 좀 이상하지 않은가?

인증이 실패한 경우가 왜 Unauthorized인 것일까? Unauthenticated 여야하지 않은가? 즉, 인증에 실패했을 때는 401을 사용하면 안되는거 아닌가? 하는 생각이 들었다.

 

찾아보니 이와 관련해 비슷한 의견들이 있었고, 결론적으로 다수의 의견은 그냥 이름을 잘못지은 것이라는 것이다.

 

이름때매 혼동이 되긴 하지만 MDN 문서에서도 Http status(401, 403)에 어떤 경우에 사용하는 것인지 정확한 설명을 하고 있고, 대부분의 경우 위와 같이 구현하고 있어 그대로 구현하기로 했다.

320x100
반응형
댓글
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함