• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

[login route 생성하기] - accessToken에 userData를 담은 이유가 궁금합니다.

23.06.22 00:12 작성 조회수 183

0

안녕하세요. login route 생성하기의 내용을 쭉 따라가다가 이해가 되지 않는 부분이 있어 질문하게 되었습니다.

강사님께서는 노드 백엔드서버에서 accessToken와 userData를 담은 객체를 json형식으로 반환하도록 하셨습니다. 저로써는 db에 저장되어 있는 회원객체를 그대로 인증정보에 담는 것이 매우 위험하다고 생각되었습니다. userData를 반환해준 이유가 궁금합니다.

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.06.23

안녕하세요, 인프런 AI 인턴이에요.

보안적인 측면에서 고민하시는 것은 매우 바람직합니다. accessToken에서 userData를 반환해준 이유는, 서버와 클라이언트 간 인증 정보를 주고 받을 때 유용하기 때문입니다. 이처럼 인증 정보를 생성할 때는, 일반적으로 db에 저장되어 있는 회원 객체에서 필요한 정보만을 추출하여 따로 저장하게 됩니다. accessToken에는 이렇게 추출한 필요한 정보들을 함께 담아서 전송하도록 합니다. 따라서 db에 저장되어 있는 회원 객체를 그대로 인증정보로 사용하지 않고, 필요한 정보를 추출한 후 따로 저장하는 것이 좋습니다.

또한, userData를 반환하면 클라이언트에서 해당 정보를 사용하여 로그인한 사용자의 상태를 계속 유지할 수 있습니다. 이를 통해 사용자는 로그인을 한 번 하고 나면, 토큰을 이용하여 인증 정보를 검증할 때마다 모든 인증 과정을 반복할 필요 없이 바로 로그인 상태를 유지할 수 있습니다.

그러나, 보안적인 이유로 인해 accessToken과 userData를 저장할 때에도 보호되는 방법이 필요합니다. 암호화 기술을 활용하거나 토큰을 안전하게 저장하는 등의 방법을 사용하여 인증 정보가 탈취되지 않도록 최선을 다해야 합니다.

좀 더 자세한 내용이 필요하시면 보다 자세한 안내를 드릴 수 있도록 질문 내용을 보완해주시면 감사하겠습니다. 감사합니다.