상세 컨텐츠

본문 제목

내 정보를 변경하려고할 때 왜 다시 비밀번호를 입력할까? (Feat.세션, 토큰)

본문

 

UX 기획자라면 한 번쯤 들어봤을 사용자의 영혼 담긴 외침.

 

"아니, 로그인했는데! 내 정보 좀 바꾸겠다는데 왜 또 비밀번호를 입력하라는 거야? 나 못 믿어?!!"

 

 

네... 사실 반은 맞고 반은 틀립니다.

 

서비스를 만드는 입장에서 사용자를 못 믿는 게 아니라,

 

사용자의 '로그인된 환경'을 믿지 못하는 거죠.

 

이 짜증 나는 화면 뒤에는 사실 사용자의 소중한 정보를 지키려는

 

개발자들의 눈물겨운 노력이 숨어있답니다.

 

 

"그래서 이게 왜 이렇게 된 건데?"라고 개발자에게 물어보기 전,

 

우리 먼저 살짝 알아보고 센스 있는 기획자가 되어보자구요! 😉

 

 


 

 

사실 우린 '진짜' 로그인 상태가 아닐지도? 🤔

 

우리가 아이디와 비번을 탁! 치고 로그인에 성공하면,

 

서버는 우리에게 일종의 '자유이용권'을 줍니다.

 

덕분에 페이지를 옮겨 다닐 때마다 "저 OOO인데요" 하고 신분증 검사를 안 해도 되죠.

 

이 자유이용권을 관리하는 대표적인 방식이 바로 세션토큰이에요.

 

  • 세션 (서버 껌딱지형)

    서버 형님이 제 신분증을 직접 보관하고, 저한테는 "얘 우리 애 맞음 ㅇㅇ" 이라고 적힌

    쪽지(세션 ID) 하나만 주는 거예요. 보안은 철저하지만, 사람이 많아지면 서버 형님이 힘들겠죠?

  • 토큰 (만능 프리패스형)

    제 정보를 암호화해서 만든 '만능 프리패스'를 아예 저한테 주는 거예요.

    이걸 들고 다니면서 필요할 때마다 "저 통과한 사람인데요?" 하고 보여주기만 하면 되죠.

    서버가 일일이 기억할 필요가 없어서 편해요.

근데 이 토큰도 맹점이 있어요.

이 '만능 프리패스'는 주로 우리 웹 브라우저(쿠키나 로컬 스토리지)에 저장되는데,

만약 해커가 악성 스크립트로 이걸 훔쳐 가면?

내 아이디/비번을 몰라도 해커가 나인 척 로그인할 수 있는 위험이 생겨요!



여기서 잠깐, 이런 위험한 시나리오도 있어요! 😱

  • 세션 하이재킹

    이건 마치 내가 받은 콘서트 티켓을 해커가 싹 훔쳐 가서,

    자기가 나인 척 콘서트장에 들어가 버리는 거예요.

    내가 로그인해서 받은 '인증 티켓'을 가로채서 내 세션을 통째로 빼앗아 가는 거죠.


  • 세션 스니핑

    하이재킹을 위한 준비 단계랄까요?

    공용 와이파이 같은 데서 내가 뭘 하는지 해커가 몰래 엿보고 있다가,

    내가 주고받는 '인증 티켓' 정보를 쏙 빼가는 거예요.

    특히 보안이 약한(HTTP) 통신이라면 더 위험하겠죠?

 

이에 따라 많은 세션 및 토큰 기반의 인증방식을 사용하는 많은 웹 서비스들이 위험 시나리오를 사전에 방지하기 위해

 

'내 정보' 같은 중요한 정보를 수정할 수 있는 페이지로 접근할 때에는 비밀번호를 한번 더 입력하는 것과 같은 

 

추가적인 인증 절차를 요구하고 있습니다. 

 

 

 

 

또 한가지 중요한 건, 이 자유이용권이 영원하지 않다는 거예요.

 

보안상의 이유로, 일정 시간이 지나면 "땡! 시간 다 됐습니다~" 하고 효력이 사라지거든요.

 

즉, 내 눈에는 계속 로그인된 화면이 보여도, 서버와의 약속 시간은 이미 끝났을 수 있다는 뜻이죠.

 

 


 

 

그래서 우리 기획자는 뭘 할 수 있을까? 💡

 

이 개발 지식을 알게 된 우리는 이제 그냥 "불편해요"에서 끝나는 게 아니라,

 

더 나은 경험을 제안할 수 있습니다.

 

  1. 사용자 달래주기 (feat. 마이크로카피)

    "비밀번호를 다시 입력하세요"라는 차가운 말 대신,

    "소중한 정보를 안전하게 지키기 위해 비밀번호를 한 번 더 확인할게요!" 같은

    따뜻한 문구 하나만 넣어줘도 사용자는 훨씬 안심할 거예요.

    이 절차가 오류가 아니라 '보호 장치'라는 걸 알려주는 거죠.


  2. 깐깐함의 레벨 조절하기

    : 모든 행동에 비밀번호를 물어보면 사용자는 떠나버릴 거예요.

    프로필 사진 바꾸기와 연락처 바꾸기의 중요도가 다른 것처럼,

    어떤 행동이 'LV. 99 최종 보스급'으로 중요한지 개발자와 함께 정의하고,

    꼭 필요한 순간에만 재인증을 요구하도록 설계하는 센스가 필요합니다.


  3. 더 편하고 멋진 무기 장착하기

    비밀번호, 솔직히 입력하기 귀찮잖아요?

    우리에겐 더 멋진 무기가 있습니다.

    네이버의 '2단계 인증'이나, 우리에게 익숙한 지문/얼굴 인식 같은 생체 인증을 추가하는 거죠.

    보안은 더 강력하게, 사용자는 손가락 하나로 편하게!

    이게 바로 기술을 이해한 기획자의 힘 아니겠어요?

 


 

 

결론적으로, '로그인 후 비밀번호 재입력'은 버그나 실수가 아닌,

 

사용자를 지키기 위한 아주 정교하고 중요한 약속입니다.

 

이 원리를 이해하는 것만으로도 우리는 개발자와 더 깊이 있는 대화를 나눌 수 있고,

 

사용자의 짜증을 신뢰로 바꿀 수 있는 '센스 있는' UX 기획자가 될 수 있을 거예요!

 

 

관련글 더보기

댓글 영역