토큰 기반 인증이란? 인증 토큰의 종류와 JWT의 이점

토큰 기반 인증이란? 인증 토큰의 종류와 JWT의 이점

전 세계 수천 곳의 기업이 Okta를 통해 시간과 비용을 절감하고 있습니다. 아이덴티티가 기업에게 어떤 영향을 미칠 수 있는지 알아보세요.

토큰 기반 인증이란? 인증 토큰의 종류와 JWT의 이점

업계 최고의 분석가들이 Okta와 Auth0를 아이덴티티 분야의 리더로 연속 선정하고 있는 이유를 알아보세요.

토큰 기반 인증이란 사용자가 자신의 아이덴티티를 확인하고 고유한 액세스 토큰을 받을 수 있는 프로토콜을 말합니다. 사용자는 토큰 유효 기간 동안 동일한 웹페이지나 앱, 혹은 그 밖에 해당 토큰으로 보호를 받는 리소스로 돌아갈 때마다 자격 증명을 다시 입력할 필요 없이 토큰이 발급된 웹사이트나 앱에 액세스할 수 있습니다.

인증 토큰은 도장이 찍힌 티켓과 같습니다. 토큰이 유효하다면 사용자는 계속해서 액세스할 수 있습니다. 사용자가 로그아웃하거나 앱을 종료하면 토큰도 무효화됩니다.

토큰 기반 인증은 비밀번호 기반 또는 서버 기반 인증 기법과는 다릅니다. 토큰이 두 번째 보안 계층을 제공하여 관리자가 각 작업과 트랜잭션을 정밀하게 제어할 수 있습니다.

하지만 토큰을 사용하려면 약간의 코딩 노하우가 필요합니다. 개발자들은 대체로 이러한 기법을 빠르게 습득하지만 학습 곡선도 존재합니다.

그럼 이제 고객과 고객 기업별로 어떤 토큰이 적합한지 자세히 알아보겠습니다. 

인증 토큰의 역사

인증과 인가 (권한 부여)는 서로 다른 개념이지만 연관성이 있습니다. 인증 토큰을 사용하기 전에는 비밀번호와 서버가 사용되었습니다. 기존 방식을 사용해 적합한 사람이 필요할 때 원하는 정보에 액세스했는지 확인해야 했지만 항상 효과적이지는 못했습니다.

비밀번호를 예로 들면, 일반적으로 다음과 같은 과정이 작용합니다.

  • 사용자 생성. 문자, 숫자, 기호를 조합하여 비밀번호를 생성합니다.
  • 기억. 고유한 비밀번호 조합을 항상 기억해야 합니다.
  • 반복. 액세스가 필요할 때마다 비밀번호를 입력해야 합니다.

또한 유저들은 비밀번호를 일일이 다 기억하지 못하며, 다음과 같은 요령에 의지하는 경우가 많습니다.

  • 비밀번호 기록. 비밀번호가 빼곡히 적힌 종이를 분실할 경우 보안 악몽이 시작됩니다.
  • 비밀번호 재사용. 사람들은 동일한 비밀번호를 여러 계정에서 사용하는 경향이 있습니다. 따라서 한 개의 비밀번호가 분실될 경우 대부분의 계정이 취약해질 수 있습니다.
  • 부분적인 비밀번호 변경. 사람들은 비밀번호를 업데이트해야 할 때 문자나 숫자를 하나만 변경합니다.

비밀번호 역시 서버 인증이 필요합니다. 사람들이 로그인할 때마다 컴퓨터가 트랜잭션 레코드를 생성하며, 결과적으로 메모리 부하가 증가합니다.

하지만 토큰 인증은 다릅니다.

토큰 인증 방식에서는 보조 서비스를 통해 서버 요청을 확인합니다. 확인이 완료되면 서버가 토큰을 발급하여 요청에 응답합니다.

사용자는 여전히  적어도 한 개의 비밀번호 를 기억해야 하지만 토큰이 액세스 계층을 하나 더 제공하기 때문에 도용하