개인정보 처리방침 (AI Music Studio)
사업자 정보
- 상호: 에이아이소프트 · 대표자: 박훈재
- 사업장 주소: 경기도 안양시 동안구 관악대로 339번길 72, 302호
- 사업자등록번호: 411-18-92743
- 통신판매업: 신고 면제 대상(공정거래위원회 고시 — 직전년도 통신판매 거래 50회 미만 또는 부가가치세법상 간이과세자)
- 연락처: longpapa82@gmail.com
시행일: 2026년 7월 11일
AI Music Studio(이하 "회사" 또는 "서비스")는 이용자의 개인정보를 중요하게 생각하며, 「개인정보 보호법」 등 관련 법령을 준수합니다. 본 방침은 서비스가 어떤 개인정보를 어떤 목적으로 수집·이용하며, 어떻게 보관·파기하고 제3자에게 처리를 위탁하는지를 설명합니다.
1. 수집하는 개인정보 항목 및 수집 방법
서비스는 회원가입 및 서비스 이용 과정에서 아래 정보를 수집합니다. (근거: 실제 데이터베이스 스키마 및 인증/생성 코드)
| 구분 | 수집 항목 | 수집 시점·방법 | 코드 근거 |
|---|---|---|---|
| 이메일 회원가입 | 이메일 주소, 비밀번호 | 회원가입 시 이용자 직접 입력 (비밀번호는 Supabase Auth가 해시 저장하며, 회사 DB에 평문 저장하지 않음) | authService.ts, profiles.email(migration) |
| 이메일 인증 | 6자리 인증번호의 SHA-256 해시값(원문 미저장), 이메일, 만료시각, 시도 횟수 | 회원가입 인증 시 자동 생성 | email_verifications 테이블, send-otp/index.ts |
| 소셜 로그인(Google) | Google 계정 이메일, 이름(full_name/name), 프로필 사진 URL(avatar_url) |
Google 로그인 시 Google로부터 전달 | signInWithGoogleNative, handle_new_user 트리거 |
| 소셜 로그인(Apple) | Apple 계정 이메일(이용자가 비공개 릴레이 주소 선택 가능), 이름(최초 1회 제공) | Apple 로그인 시 Apple로부터 전달(identityToken) | signInWithApple |
| 콘텐츠 신고·차단 정보 | 신고 대상 트랙 ID, 신고 사유, 상세 내용, 차단 관계 | 이용자가 콘텐츠를 신고·차단할 때 | content_reports, user_blocks 테이블, report-content |
| 프로필 정보 | 표시 이름(display_name), 아바타 URL, 이메일 | 가입 시 자동 생성 | profiles 테이블 |
| 음악 생성 정보 | 생성 프롬프트(prompt), 가사(lyrics), 선택한 보이스 프리셋, 생성 파라미터, 생성된 음원 파일, 곡 제목 | 이용자가 음악을 생성할 때 | generation_jobs, tracks 테이블 |
| 구독·결제 정보 | 플랫폼(android/ios), 상품 ID, 구독 상태, 체험/구독 기간, 스토어 영수증 토큰(latest_receipt, 서버 전용·외부 미반환) | 인앱 결제/체험 시작 시 | subscriptions 테이블, verify-purchase/index.ts |
| 공유 정보 | 공유 링크 토큰, 재생 횟수, 만료일 | 이용자가 곡을 공유할 때 | share_links 테이블 |
| 서비스 이용 기록 | API 사용량(모델, 사용 단위, 비용), 오류 로그(오류 발생 범위·메시지, 이용자 식별자(userId), 관련 트랙 ID 등 오류 분석용 맥락 — 이메일·비밀번호·인증번호 등 직접 식별 민감정보는 미기록) | 음악 생성 등 서비스 이용 시 자동 생성 | api_usage, error_logs 테이블 |
| 출시 알림(사전 등록) | 이메일 주소, 수집 출처 | 홍보 웹사이트에서 이용자가 직접 입력 | waitlist 테이블, join-waitlist/index.ts |
- 비밀번호: 서비스 자체 DB에 평문으로 저장하지 않으며, 인증 처리는 Supabase Auth를 통해 이루어집니다.
- 인증번호: 원문(평문)을 저장하지 않고 SHA-256 해시값만 저장하므로, 회사도 인증번호 원문을 알 수 없습니다. (근거:
send-otp/index.ts) - 서비스는 별도의 위치정보, 연락처, 사진첩 등 단말기 저장소 정보를 수집하지 않습니다.
2. 개인정보의 수집 및 이용 목적
- 회원 식별 및 관리: 회원가입, 로그인, 이메일 인증(본인 확인), 계정 유지
- 핵심 서비스 제공: 입력한 프롬프트·가사·보이스 선택에 따른 AI 음악 생성, 생성 음원의 보관·재생·공유
- 결제 및 구독 관리: 인앱 결제 검증, 무료 체험 및 유료 구독 상태 관리, 이용 자격(entitlement) 부여
- 서비스 운영·개선·부정이용 방지: 일일 생성 한도 관리, 발송 속도 제한(email-bomb 방지), 오류 로그 및 API 사용량 분석
- 고지 및 안내: 서비스 관련 공지사항 전달(notices)
3. 개인정보의 보유 및 이용 기간, 파기
3.1 원칙
회사는 개인정보의 수집·이용 목적이 달성되면 해당 정보를 지체 없이 파기합니다. 다만 관계 법령에 따라 보존 의무가 있는 경우 해당 기간 동안 보관합니다.
3.2 항목별 보유 기간
| 항목 | 보유 기간 | 근거 |
|---|---|---|
| 이메일 인증번호(해시) | 10분(TTL) 경과 또는 인증 완료 시 즉시 폐기. 새 코드 발송 시 이전 미사용 코드 삭제, 만료·사용 완료된 행은 발송 로직에서 자동 정리(purge) | CODE_TTL_MS = 10분, send-otp/index.ts의 delete 로직 |
| 회원 정보(프로필·이메일) | 회원 탈퇴 시까지 (탈퇴 처리 방식은 4항 참조) | profiles |
| 생성 음악·프롬프트·가사 | 이용자가 삭제하거나 계정 삭제 시까지. 계정 삭제 시 on delete cascade로 연동 삭제 |
tracks, generation_jobs FK 설정 |
| 구독·결제 정보 | 계정 삭제 시까지. 단, 「전자상거래 등에서의 소비자보호에 관한 법률」에 따라 아래 법정 보존 항목은 계정 삭제 후에도 해당 기간 동안 보관됩니다 | subscriptions |
| 오류 로그·API 사용량 | 서비스 운영·정산 목적 달성 시까지 보관 후 정기적으로 파기. 오류 로그에 포함된 이용자 식별자(userId)는 계정 삭제 시 즉시 연동 삭제되지 않고, 위 파기 시점에 함께 삭제됩니다 | error_logs, api_usage |
| 출시 알림 이메일 | 서비스 출시 안내 발송 목적 달성 시 또는 이용자의 수신 거부 요청 시 지체 없이 파기 | waitlist |
- 인증번호의 데이터 최소화: 인증번호 관련 데이터는 원문 미저장 + 10분 만료 + 사용/만료 즉시 삭제를 통해 최소한으로만 처리됩니다.
- 법령에 따른 보존: 「전자상거래 등에서의 소비자보호에 관한 법률」 제6조 및 동법 시행령 제6조에 따라 다음 기록을 보존합니다.
- 대금결제 및 재화 등의 공급에 관한 기록: 5년
- 계약 또는 청약철회 등에 관한 기록: 5년
- 소비자의 불만 또는 분쟁처리에 관한 기록: 3년
4. 이용자의 권리 및 행사 방법 (열람·정정·삭제·탈퇴)
이용자는 언제든지 본인의 개인정보에 대해 다음 권리를 행사할 수 있습니다.
- 열람 및 정정: 앱 내 프로필 화면에서 표시 이름 등 본인 정보를 확인·수정할 수 있습니다.
- 생성물 삭제: 라이브러리에서 생성한 곡을 삭제할 수 있으며, 공유 링크는 별도로 회수(revoke)할 수 있습니다. (근거:
revoke-share기능) - 동의 철회 및 회원 탈퇴: 앱 내 프로필 화면의 "계정 삭제" 기능을 통해 언제든지 계정과 개인정보의 영구 삭제를 요청할 수 있습니다. 계정 삭제 시 프로필·생성한 음원·생성 이력·구독 정보·공유 링크가 서버에서 연쇄 삭제(
on delete cascade)되고, 비공개 스토리지에 저장된 음원 파일도 함께 삭제됩니다. 삭제는 되돌릴 수 없습니다. (근거:delete-accountEdge Function, 프로필 화면 진입점)
권리 행사는 앱 내 기능을 이용하거나 아래 8. 문의처로 요청하시면, 회사는 관련 법령에 따라 지체 없이 조치합니다.
5. 개인정보 처리의 위탁 및 제3자 제공
서비스는 아래와 같이 개인정보 처리를 국내외 사업자에게 위탁하고 있습니다. 위탁받는 자(수탁자)의 서버는 해외에 위치할 수 있으며(개인정보의 국외 이전에 해당), 이용자는 회원가입 시 본 개인정보처리방침을 확인하고 동의함으로써 아래 국외 이전에 동의합니다. 이용자는 국외 이전에 대한 동의를 거부할 수 있으나, 결제 검증·이메일 인증 등 해당 처리가 필수적인 기능은 이용이 제한될 수 있습니다.
국외 이전 세부 사항 (「개인정보 보호법」 제28조의8):
| 이전받는 자 | 이전 국가 | 이전 일시·방법 | 이전되는 항목 | 이용 목적 | 보유·이용 기간 |
|---|---|---|---|---|---|
| Supabase, Inc. | 미국 | 서비스 이용 시 네트워크를 통한 전송 | 이메일, 프로필, 생성 콘텐츠, 구독 정보, 출시 알림 이메일 | 데이터베이스·인증·스토리지 | 위탁계약 종료 또는 회원 탈퇴 시까지 |
| Google LLC (Lyria) | 미국 | 음악 생성 요청 시 전송 | 생성 프롬프트, 가사, 보이스 프리셋 설명, 네거티브 프롬프트, 생성 파라미터 | AI 음악 생성 | 요청 처리 목적에 한하며, 보관 기간은 Google의 정책에 따름 |
| Resend, Inc. | 미국 | 인증 이메일 발송 시 전송 | 이메일 주소, 인증번호 | 이메일 인증번호 발송 | 발송 목적 달성 즉시 |
| 수탁자 | 위탁 업무 | 이전되는 정보 | 코드 근거 |
|---|---|---|---|
| Supabase | 회원 인증, 데이터베이스, 음원 파일 저장(비공개 버킷), Edge Function 실행 | 이메일, 프로필, 생성물, 구독 정보 등 서비스 전반의 데이터 | services/supabase.ts, 전 Edge Function |
| Resend | 이메일 인증번호 발송 | 수신 이메일 주소, 인증번호(발송용) | send-otp/index.ts (Resend REST API 호출) |
| Google (Vertex AI / Gemini — Lyria 모델) | AI 음악 생성 | 음악 생성 프롬프트, 가사, 보이스 프리셋 설명, 네거티브 프롬프트, 생성 파라미터 | _shared/lyria.ts (aiplatform / generativelanguage.googleapis.com) |
| Google (OAuth) | 소셜 로그인 인증 | Google 계정 인증 정보(ID 토큰) | signInWithGoogleNative |
| Apple (Sign in with Apple) | 소셜 로그인 인증 | Apple 계정 인증 정보(identityToken), 이메일·이름 | signInWithApple |
| Google Play / Apple App Store (인앱 결제) | 결제 처리 및 영수증 검증 | 구매 토큰/영수증, 상품 ID, 플랫폼 정보 | verify-purchase/index.ts |
- 발신 이메일 주소: 인증번호 발송에는 이메일 발송 사업자(Resend)를 통해
AI Music Studio <onboarding@resend.dev>발신자가 사용됩니다. - 회사는 위 목적 외에 이용자의 개인정보를 제3자에게 판매하거나 마케팅 목적으로 제공하지 않습니다.
- 음원 접근 통제: 생성된 음원은 비공개(private) 저장소에 보관되며, 소유자 확인 후 발급되는 단기 서명 URL(5분 유효)로만 접근됩니다. 공유된 곡의 재생 역시 앱을 통해서만 가능합니다. (근거:
get-audio-url,create-share) - 음원 다운로드(유료 구독 이용자): 유료 구독(무료 체험 포함)이 활성화된 이용자는 서버의 이용 권한 검증을 통과한 경우 자신의 음원(MP3)을 기기에 다운로드할 수 있습니다. 다운로드는 소유권 및 구독 권한을 확인한 뒤 첨부 다운로드용 단기 서명 URL로 제공됩니다. 다운로드된 파일은 이용자 기기의 저장소로 이전되어 회사의 통제 범위를 벗어나며, 이후 파일의 보관·이용·배포에 대한 책임은 이용자에게 있습니다. 해당 음원에는 AI 생성 식별 워터마크(예: Google SynthID)가 포함되어 있을 수 있습니다. (근거:
download-audio)
6. 만 14세 미만 아동의 개인정보 보호
- 서비스는 원칙적으로 만 14세 미만 아동을 대상으로 하지 않으며, 만 14세 미만 아동의 회원가입을 허용하지 않습니다.
- 회원가입 화면에서 이용자는 "만 14세 이상이며 이용약관·개인정보처리방침에 동의합니다" 항목에 명시적으로 동의(체크)해야 가입을 진행할 수 있으며, 이 동의 없이는 계정을 생성할 수 없습니다.
- 회사가 만 14세 미만 아동의 개인정보가 법정대리인의 동의 없이 수집된 사실을 확인한 경우, 지체 없이 해당 정보를 파기합니다.
7. 개인정보의 안전성 확보 조치
회사는 개인정보 보호를 위해 다음과 같은 기술적·관리적 조치를 취하고 있습니다. (코드 근거)
- 인증번호 해시 저장: 인증번호 원문 미저장, SHA-256 해시만 저장 (
send-otp) - 접근 통제(RLS):
email_verifications등 민감 테이블은 Row Level Security를 활성화하고 클라이언트 접근을 전면 차단, 서버 권한(service_role)으로만 접근 (email_verificationsmigration) - 비공개 저장소 + 서명 URL: 음원은 비공개 버킷에 저장, 소유권 검증 후 단기 서명 URL로만 재생 (
get-audio-url) - 결제 검증 fail-closed: 결제는 스토어 서버 검증이 성공한 경우에만 이용 자격 부여 (
verify-purchase) - 오남용 방지: 이메일 발송 속도 제한(60초 쿨다운 + 분당 전역 한도), 인증 시도 5회 제한, 일일 생성 한도 (
send-otp,generate-music) - 로그 내 개인정보 최소화: 오류 로그에는 이메일·비밀번호·인증번호 등 직접 식별 민감정보를 기록하지 않으며, 오류 원인 분석을 위한 내부 식별자(userId)·맥락(오류 범위, 관련 트랙 ID 등)만 포함합니다 (
_shared/http.ts의logError, 자격정보 형태 문자열 자동 마스킹) - 전송 구간 암호화: 모든 통신은 HTTPS로 이루어집니다.
8. 개인정보 보호책임자 및 문의처
개인정보 관련 문의, 열람·정정·삭제·탈퇴 요청은 아래로 연락해 주시기 바랍니다.
- 개인정보 보호책임자: 박훈재 (대표자)
- 연락처(이메일): longpapa82@gmail.com
9. 처리방침의 변경
본 개인정보 처리방침은 법령·서비스 정책 변경에 따라 개정될 수 있으며, 변경 시 앱 내 공지사항(notices) 등을 통해 고지합니다.