본문 바로가기
Backend

깃허브 404?

by 코드김치 2024. 2. 7.

https://github.com/dear-github/dear-github/issues/162

 

Private repositories should not return 404 · Issue #162 · dear-github/dear-github

I think it's misleading that when visiting a private repository you get a 404 instead of a "this is private" message.

github.com


깃헙에서 로그인 안한 상태로 private repository를 조회했을 때 404가 나오면 존재하는건지 권한이 없는건지 헷갈리는 문제가 있다.
사실은 실제로 존재하는 우리팀 레포(private)이다. 


여기서 오류 메시지가 굉장히 애매한데... 이건 사용자 경험을 해칠 수도 있지만 이 레포가 존재하는지 안하는지 여부를 아예 공개하지 않고 있기 때문에 보안적으로는 안전하다고 볼 수 있다. 
만약에 권한 오류 메시지나 에러코드를 보여줬다면 공격자는 어? 존재하는 레포네..! 내가 한번 뚫어보자! (물론 뚫지는 못하겠지만.. 해당 리소스의 존재여부 자체가 기업의 중요 정보 중 하나라면 이야기가 달라진다.) 

우리 회사의 에러 메시지들을 상태코드랑 다 맵핑해서 그렇게 메시지에 맞게 상태코드를 세분화하여 리턴해주도록 바꿔야 되는게 아닌가라는 생각을 했었는데 '에러메시지' 와 '상태코드' 모두 사용자 경험과 보안을 양측 모두를 고려해서 적절하고 신중하게 작업해야됨을 알 수 있었다. 

(저기 이슈에 적힌것처럼 
404... but maybe not. Please sign in to find out if this resource exists or not 이런식이면 레포가 존재하는지 여부를 공개안하면서도 로그인해서 확인해라 하는 사용자를 위한 정확한 에러 메시지 표현이 될 수도 있다고 생각한다. ) 

'Backend' 카테고리의 다른 글

모듈러 모놀리식 아키텍처 - MSA의 새로운 방향  (1) 2023.12.20