# 내 데이터는 어디에 있나요?

이 페이지에서는 각 보안 모드에서 XMemo가 무엇을 저장하고 어디에서 처리하는지, 누가 복호화할 수 있는지, 내보내기나 삭제 시 어떤 일이 발생하는지, 그리고 본인의 계정에서 실제 경계를 확인하는 방법을 설명합니다.

- Canonical: https://docs.xmemo.dev/ko/docs/security/where-is-my-data
- Locale: ko-KR
- Content-Locale: ko-KR
- Canonical-Content-Digest: c0058e6fcf05a87e666d8680ed831e494b51ed49b3aad776a01fc3232612a919
- Edition-Digest: 8115743ff79041a98037652ad4eec75bb10781c9345708edfa8ceb786936b5f0

## 빠른 비교

## Cloud 관리 모드

- XMemo 서버는 서버 측 시맨틱 리콜, 랭킹 및 내보내기를 위해 메모리 내용을 처리할 수 있습니다.
- 가장 편리한 모드이지만, 영지식(Zero-knowledge) 모드는 아닙니다.
- 삭제 시 메모리 행과 관련 메타데이터가 제거되며, DSAR 내보내기에는 평문이 포함될 수 있습니다.

## Keyguard 모드

- 설정 마법사는 KMS binding을 저장하고 personal_default_mode = keyguard를 커밋합니다.
- 리콜을 수행하려면 KMS grant가 계속 유효해야 합니다. grant를 취소하면 이후의 decrypt/unwrap 작업이 차단됩니다.
- XMemo는 자체 암호문과 메타데이터를 삭제하지만, KMS 키의 로테이션이나 폐기는 테넌트가 직접 관리합니다.

## Vault 모드

- XMemo는 vault 메모리를 복호화할 수 없고, vault 키를 재설정할 수 없으며, 모든 디바이스와 복구 키트를 분실한 경우 데이터를 복원할 수 없습니다.
- Vault 데이터의 DSAR 내보내기에는 암호문과 envelope 메타데이터가 포함되며, 로컬에서 디바이스 또는 복구 키트를 사용하여 복호화해야 합니다.
- 해당 기능이 클라이언트가 제공하거나 개인정보를 보호하는 표현 방식으로 작동하지 않는 한, 호스팅형 시맨틱 기능이 제한될 수 있습니다.

## 프로덕션 데이터 경계

- Managed Postgres: 계정, 메모리, 벡터, 설정 및 감사 기록의 프로덕션 스토리지 경계.
- 데이터베이스 RLS/runtime context: 배포 환경별 고유한 제어 항목이며, 대상 환경에서 runtime role, migration ledger, runtime-context 플래그 및 owner/team CRUD 매트릭스를 검증해야 합니다.
- Supabase compatibility: 로컬 또는 OSS 환경에는 적합하지만, service-role 동작이 프로덕션 환경의 보안 강화 경계와 동일하지는 않습니다.

