멀티 테넌트 데이터 접근 패턴과 IAM 정책
AWS 데이터 스토어 활용
Dunieski Otano
AWS Solutions Architect
멀티 테넌트 보안 침해 사례
- SaaS 애플리케이션이 1,000개 기업에 서비스 제공
- 애플리케이션 코드 버그로 테넌트 간 접근 허용
- A사 직원이 B사 데이터를 열람
- 결과: 고객 이탈, 소송, 신뢰도 손상
테넌트별 파티션 키 패턴
- 설계
- tenantId를 파티션 키로 사용
- 모든 항목에 tenantId 포함
- 장점
- 요구 사항
테넌트 격리를 위한 IAM 조건 키
- dynamodb:LeadingKeys
- 정책 예시
- "tenantId = tenant-123인 경우 허용"
- 적용
심층 방어 구현
- 계층 1: 애플리케이션
- 계층 2: IAM 정책
- 계층 3: 데이터베이스 설계
테스트 및 검증
- 테넌트 간 접근 테스트
- 다른 테넌트 데이터 읽기 시도
- AccessDeniedException으로 실패해야 함
- 감사 로깅
- 정기 검토
축하합니다!
- AWS 데이터 스토어: DynamoDB, S3, ElastiCache, OpenSearch
- 설계 및 최적화: 테이블 설계, 스토리지 최적화
- 데이터 보안: 암호화, 시크릿 관리, 멀티 테넌트 격리
Preparing Video For Download...