VideoSDK 클라우드 녹화를 AWS S3에 안전하게 저장하는 방법
발행: (2026년 1월 8일 오후 03:18 GMT+9)
4 min read
원문: Dev.to
Source: Dev.to
전용 IAM 사용자가 필요한 이유
보안 모범 사례에 따라 VideoSDK는 절대 AWS 루트 계정을 사용해서는 안 됩니다. 대신 제한된 권한을 가진 전용 IAM 사용자를 생성하여 다음을 수행하도록 합니다:
- 비디오 녹화 파일 업로드
- 필요 시 녹화 파일 읽기 또는 삭제
- 하나의 특정 S3 버킷에만 접근
이점
- 최소 권한 보안
- 쉬운 자격 증명 교체
- 영향을 받는 범위(블라스트 반경) 감소
단계 1: VideoSDK용 IAM 사용자 생성
- AWS 콘솔에 로그인합니다.
- Services → Security, Identity & Compliance → IAM으로 이동합니다.
- Users → Create user를 클릭합니다.
사용자 세부 정보
- User name:
videosdk-storage - Access type: 프로그래밍 접근(콘솔 접근은 필요 없음)
Next를 클릭하여 진행합니다.
단계 2: 맞춤형 S3 정책 만들기
필요한 버킷과 작업에만 접근을 제한하려면 맞춤형 IAM 정책을 생성합니다.
- 권한 페이지에서 Attach policies directly를 선택합니다.
- Create policy를 클릭하고 JSON 탭으로 전환합니다.
- 아래 정책을 붙여넣고
YOUR-BUCKET-NAME을 실제 버킷 이름으로 교체합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:PutObjectAcl",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::YOUR-BUCKET-NAME/*"
},
{
"Effect": "Allow",
"Action": ["s3:ListBucket"],
"Resource": "arn:aws:s3:::YOUR-BUCKET-NAME"
}
]
}
버킷 이름 교체
arn:aws:s3:::my-video-recordings/*
- Save the policy에 다음을 입력합니다:
- Name:
VideoSDK-S3-Access - Description:
S3 access for VideoSDK recordings
- Name:
Create policy를 클릭합니다.
단계 3: 정책을 IAM 사용자에 연결
- IAM 사용자 생성 화면으로 돌아가 정책 목록을 새로 고칩니다.
- VideoSDK-S3-Access를 검색하고 선택합니다.
- Next → Create user를 클릭합니다.
이제 IAM 사용자가 올바른 권한을 갖게 됩니다.
단계 4: AWS 액세스 키 생성
- 사용자 videosdk-storage를 엽니다.
- Security credentials 탭으로 이동합니다.
- Create access key를 클릭하고 Third‑party service를 선택한 뒤 확인합니다.
이 자격 증명 저장
- Access Key ID
- Secret Access Key (한 번만 표시됨)
백업을 위해 .csv 파일을 다운로드합니다.
단계 5: S3 버킷 생성 (필요한 경우)
- Services → S3로 이동합니다.
- Create bucket을 클릭합니다.
버킷 설정
- Bucket name:
your-videosdk-recordings(전 세계에서 고유해야 함) - Region: 원하는 리전을 선택하고 기억합니다.
- Block all public access: 활성화
Create bucket을 클릭합니다.
단계 6: VideoSDK 대시보드에서 AWS S3 설정
VideoSDK Live는 직접 S3 업로드를 통한 클라우드 녹화를 지원합니다.
- VideoSDK Dashboard를 엽니다.
- API Keys로 이동해 프로젝트를 선택합니다.
- Storage Configuration까지 스크롤하고 AWS S3 세부 정보를 추가합니다:
{
"bucket": "your-recordings-bucket",
"region": "us-east-1",
"accessKeyId": "YOUR_ACCESS_KEY",
"secretAccessKey": "YOUR_SECRET_KEY",
"acl": "private"
}
필드 설명
bucket– S3 버킷 이름region– 버킷이 위치한 리전accessKeyId– IAM 액세스 키secretAccessKey– IAM 비밀 키acl–private사용 권장
구성을 저장합니다.