getAnonymousKey로 받은 값을 서버에서 검증할 방법이 있나요?

이 글의 성격은 무엇인가요?

질문 / 문제 해결

내용을 설명해주세요

안녕하세요. 비게임 미니앱을 웹뷰(@apps-in-toss/web-framework)로 개발 중입니다.

토스 로그인을 쓰지 않고 사용자 정보는 직접 입력받는 구조라, 유저 식별을 getAnonymousKey()가 반환하는 hash로만 하려고 합니다.
자체 백엔드(Supabase)에 이 값을 키로 출생정보·이용상태를 저장합니다.

  1. 클라이언트가 서버로 보낸 hash가 위조/도용되지 않은 정상 발급 값인지 서버에서 검증할 수 있는 API나 방법이 있나요? (서버-서버 검증 엔드포인트, 서명 검증 등)
  2. 없다면 이 값은 인증 토큰이 아니라 식별자로만 취급하는 것이 맞을까요? 비게임 미니앱에서 권장하는 유저 데이터 보호 방식이 있으면 알려주시면 감사하겠습니다.

감사합니다.

안녕하세요 :slight_smile:

현재 앱인토스 SDK에서는 getAnonymousKey()를 통해 반환된 값이 위조되지 않았음을 서버에서 확인할 수 있는 별도의 검증 API(서버-서버 검증 엔드포인트 또는 서명 검증 방식)를 제공하지 않습니다.

따라서 문의하신 내용과 같이, 해당 값은 보안 인증을 위한 토큰이 아닌, 클라이언트 환경에서 생성된 유저 식별자로 취급하여 사용하시는 것이 적절합니다.

비게임 미니앱에서 유저 데이터를 보호하기 위한 권장 사항은 다음과 같습니다.

  1. 식별자로 활용: 해당 해시값을 유저를 구분하기 위한 고유 키(Key)로 사용하는 것은 가능합니다. 다만, 이 값만으로 유저의 권한을 증명하거나 민감한 데이터에 접근하는 ‘인증’ 용도로는 사용하지 않는 것을 권장합니다.
  2. 보안 강화: 만약 유저의 민감한 정보(출생정보 등)를 다루어야 한다면, 해당 식별자 외에 별도의 보안 로직(예: 자체적인 세션 관리 등)을 병행하여 설계하시는 것이 안전합니다.