개발자

비로그인 서비스에서 유저를 특정하는 방법?

2023년 08월 23일조회 1,014

안녕하세요! 요즘 사이드 프로젝트로 비로그인 게시판 서비스를 기획하고 있습니다. 로그인이 있으면 아무래도 개인정보 처리 및 관리가 어렵기도 하고 유저 접근성도 떨어지다보니 한번도 구현해본 적은 없지만 비로그인 방식으로 서비스를 제공하려고 합니다. 게시판 서비스다보니 좋아요나 댓글 달기, 게시글 생성 및 수정 등의 유저 기능이 필요한데, 이때 유저를 로그인 없이 특정할 수 있는 방법이 궁금합니다. 현재는 ulid, ip, agent를 유저 정보가 필요한 기능을 수행할때마다 전달받아 이를 데이터베이스에 조회 후 없다면 저장하는 방식으로 수행하고 있습니다. 하지만, 이러면 동일한 유저가 다른 네트워크, 다른 브라우저에서 접속을 한다면 다른 유저로 인식을 하는 문제가 생기니 게시글 및 댓글을 작성할때는 간단한 비밀번호와 보여질 닉네임을 입력 받도록 구현해두었습니다. 현재까지는 개발 초기 단계라 문제가 없어 보..이긴..하지만 뭔가 찝찝하네요.. 디시인사이드 같은 경우도 비로그인 게시판이고 저와 비슷한 로직으로 구현이 되어있는 것 같은데 여전히 찝찝합니다. 특히 좋아요 기능 부분에서 이미 좋아요를 한 경우 이를 화면에서 보여주기 위해 유저를 특정할 필요가 있는데 좋아요는 비밀번호 등을 입력받을 수 없기에 역시 다른 환경에서는 동일한 유저를 인식하지 못하게 될 것 같습니다. 이를 어떤 식으로 해결해야할지.. 비로그인 서비스라면 이런 유저를 특정해야하는 부분들은 포기하는 것이 맞는지 선생님들의 의견을 구하고 싶습니다! 긴글 읽어주셔서 감사합니다! 의견 부탁드립니다!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

인기 답변

행복한뉴비님의 프로필 사진

안녕하세요 비로그인서비스에서 유저를 특정하는 방법에는 많은 방식이 있을 수 있습니다. 작성자님이 현재 구현하신 방법으로도 구분이 가능할테고, 무한유지되는 세션을 통해(이 방법에 문제가 있다는 것은 둘째치고)구현한다든지, 토큰등을 발급해서 식별한다든지… 하는 방법등이 있을 수 있겠죠. 하지만 제가 제시하는 두 방향 모두 작성자님이 원하시는 “특정 유저를 식별”하기에는 부적합한것이 사실이죠. 이러한 비로그인 게시판을 가장 쉽게 접할 수 있는곳은 작성자님이 말씀하신대로 디시인사이드를 예로 들 수 있을 것 같습니다. 하지만 우리는 여기서 개발중이신 서비스의 목적성을 다시한번 생각해 볼 수 있습니다. 비로그인의 목적성중 하나로, 익명성을 생각해 볼 수 있는데 이는 다르게 말하면 개인을 특정하고싶지 않다고도 할 수 있죠. 실제로, 디시인사이드의 경우 한 유저가 pc와 모바일디바이스로 추천을 누를경우 추천이 두개가 올라가는 등의 모습이 보입니다. 결국, 비로그인 서비스이면서 정말로 “특정 유저의 완전한 식별” 이 필요한가를 다시 따져본다면… 글쎄요 저는 그렇게 필요한지는 모르겠습니다. 제가 식견이 부족하여, 실제로 비로그인서비스이지만 유저를 특정하는 방법이 있을지 모릅니다. 이상 마치며, 원하시는 해결책 찾으시길 바랍니다. 감사합니다.

고지완님의 프로필 사진

고지완

작성자

백엔드 취준2023년 08월 23일

좋은 답변 너무 감사드립니다! 답변주신 내용을 읽어본 후 유저를 특정할 필요성에 대해 곰곰히 생각해보았습니다. 말씀하신대로 비로그인이면서 유저를 정확히 특정하는 기능이 필요한지, 그게 필요하다면 굳이 비로그인이어야 하는지에 대해 고민을 하게 되었고 비로그인을 고집할 필요가 없다는 결론을 내리게 되었습니다! 물론 더 고민해본다면 방법이 있을 수도 있겠지만 제가 구현하려는 내용들은 반드시 유저를 특정해야 하는 기능들이기에 비로그인 기능은 유저나 개발자에게나 모두 불필요하고 오히려 불편하게 만들 수도 있겠다는 생각이 드네요.. 답변 정말 감사드립니다!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!