AWS Python SDK 사용 방법

AWS Python SDK를 사용하여 오브젝트 스토리지를 사용하는 방법은 아래와 같습니다.

1. AWS Python S3 SDK 사용하기

AWS Python S3 SDK는 AWS에서 Python 코드를 통해 S3를 이용할 수 있도록 제공하는 도구입니다.

카페24 클라우드의 오브젝트 스토리지는 S3 API와 호환이 되므로 해당 SDK 사용이 가능합니다.

매뉴얼 테스트 버전
Python S3 SDK 참고 링크

Boto3 version : boto3 1.6.19

Python version : 3.8.5

2. AWS Python S3 SDK 설치하기

python 및 pip 패키지 매니저가 설치된 환경에서 boto3를 설치합니다.

$ pip install boto3==1.6.19

3. 오브젝트 스토리지 API Key 확인하기

[오브젝트 스토리지 사용 방법]을 참고하여 신청한 오브젝트 스토리지의 Access Key와 Secret Key를 확인합니다.

4. 코드 예제

앞서 확인한 오브젝트 스토리지의 Access Key, Secret Key를 코드에 적용하여 사용합니다.

(1) 버킷 생성

버킷을 생성합니다.

output 예시는 다음과 같습니다.

(2) 버킷 삭제

오브젝트가 모두 삭제된 빈 버킷에 대해서만 삭제가 가능합니다.

output 예시는 다음과 같습니다.

(3) 버킷 리스트 조회

존재하는 모든 버킷을 조회합니다.

output 예시는 다음과 같습니다.

(4) 오브젝트 업로드

로컬에 있는 파일을 특정 버킷에 업로드합니다.

output 예시는 다음과 같습니다.

(5) 오브젝트 다운로드

버킷에 있는 파일을 로컬의 특정 경로로 다운로드합니다.

output 예시는 다음과 같습니다.

(6) 오브젝트 리스트 조회

버킷에 있는 모든 파일과 폴더를 조회합니다.

max_keys 값은 반환할 파일의 개수를 의미하며, default 값은 1,000입니다.

만약 버킷에 있는 파일 개수가 설정된 MaxKeys 값을 넘기면 IsTruncated 값이 True가 됩니다.

다음은 max_keys를 3으로 설정하여, 버킷에 속한 모든 오브젝트를 3개씩 조회하는 예제입니다.

output 예시는 다음과 같습니다.

(7) 오브젝트 삭제

특정 버킷에 있는 파일을 삭제합니다.

output 예시는 다음과 같습니다.

(8) 버킷 정책 등록

버킷에 정책을 등록합니다.

다음 예제를 통해 버킷에 hotlinking 방지 정책을 적용할 수 있습니다.

hotlinking은 자신의 소유가 아닌 사진, 음원 등을 관리자의 허락 없이 이미지 링크를 이용해 무단 도용하는 것을 의미합니다.

오브젝트의 링크를 호출할 때마다 트래픽이 발생하므로, hotlinking 방지 정책을 통해 이를 예방할 수 있습니다.

output 예시는 다음과 같습니다.

(9) 버킷 정책 리스트 조회

버킷에 등록된 정책을 조회합니다.

output 예시는 다음과 같습니다.

(10) 버킷 정책 삭제

버킷에 등록된 정책을 삭제합니다.

output 예시는 다음과 같습니다.

Last updated