put-object

Prev Next

Classic/VPC 환경에서 이용 가능합니다.

Ncloud Storage 버킷에 객체를 저장합니다.

참고

Sub Account 사용자가 이 명령어를 실행하려면 Change/PutObject 액션 권한이 있어야 합니다.

구문

put-object 구문은 다음과 같습니다.

aws s3api put-object \
    --bucket <bucket> \
    --key <key> \
    [--body <body>] \
    [--cache-control <cache-control>] \
    [--content-disposition <content-disposition>] \
    [--content-encoding <content-encoding>] \
    [--content-language <content-language>] \
    [--content-length <content-length>] \
    [--content-md5 <content-md5>] \
    [--content-type <content-type>] \
    [--metadata <metadata>] \
    [--storage-class <storage-class>] \
    [--server-side-encryption <server-side-encryption>] \
    [--sse-customer-algorithm <sse-customer-algorithm>] \
    [--sse-customer-key <sse-customer-key>] \
    [--sse-customer-key-md5 <sse-customer-key-md5>] \
    [--object-lock-mode <object-lock-mode>] \
    [--object-lock-retain-until-date <object-lock-retain-until-date>] \
    [--object-lock-legal-hold-status <object-lock-legal-hold-status>] \
    --endpoint-url <endpoint-url>
참고

단일 PUT 작업으로 최대 5GB 크기의 객체를 업로드할 수 있습니다. 5GB 이상의 큰 파일은 멀티파트 업로드를 사용해 주십시오.

옵션

put-object 실행 시 지정할 수 있는 옵션을 설명합니다.

필수 옵션

put-object의 필수 옵션입니다.

옵션 타입 필수 여부 설명
--bucket String Required 버킷 이름
--key String Required 객체 이름

선택 옵션

put-object의 선택 옵션입니다. 지정하지 않은 옵션에는 기본값이 적용됩니다.

옵션 타입 필수 여부 설명
--body String Optional 객체의 경로 또는 파일
--cache-control String Optional 캐싱 동작
--content-disposition String Optional 요청 데이터의 표시 방식
--content-encoding String Optional 요청 데이터의 인코딩 방식
--content-language String Optional 요청 데이터의 언어
--content-length Long Optional 요청 데이터의 크기 (Byte)
--content-md5 String Optional 요청 데이터의 Base64 인코딩된 128비트 MD5 해시값
  • 요청 데이터의 무결성 검증에 사용
  • 미입력 시 자동 계산
--content-type String Optional 요청 데이터의 형식
--metadata String Optional 객체와 함께 저장할 메타데이터
--storage-class String Optional 스토리지 클래스
  • STANDARD (기본값) | ONEZONE_IA | DEEP_ARCHIVE
    • STANDARD: Standard Class
    • ONEZONE_IA: One Zone-IA(Infrequent Access) Class
    • DEEP_ARCHIVE: Archive Class
--server-side-encryption String Optional 서버 측 암호화 방식
  • AES256 | aws:kms
    • AES256: SSE-S3 (서버 관리 키)
    • aws:kms: SSE-KMS (KMS 관리 키)
--sse-customer-algorithm String Optional 사용자 암호화 알고리즘 (AES256)
--sse-customer-key String Optional 사용자 제공 암호화 키
--sse-customer-key-md5 String Optional 사용자 제공 암호화 키의 MD5 값
--object-lock-mode String Optional 객체 보존 모드
  • GOVERNANCE | COMPLIANCE
    • GOVERNANCE: 특별 권한으로 우회 가능
    • COMPLIANCE: 누구도 우회 불가
  • --object-lock-retain-until-date와 함께 지정
  • Object Lock이 활성화된 버킷에서만 사용 가능
--object-lock-retain-until-date String Optional 객체 보존 만료일
  • ISO 8601 형식
  • --object-lock-mode와 함께 지정
  • Object Lock이 활성화된 버킷에서만 사용 가능
--object-lock-legal-hold-status String Optional 법적 보존 상태
  • ON | OFF
  • Object Lock이 활성화된 버킷에서만 사용 가능

공통 옵션

aws 명령에서 공통으로 사용하는 옵션에 대한 정보는 Ncloud Storage 옵션을 참조해 주십시오.

예시

객체 업로드 요청이 성공하면 객체의 식별 정보와 암호화 정보가 반환됩니다.

명령

객체를 업로드하는 명령 예시는 다음과 같습니다.

aws s3api put-object --bucket my-test-bucket \
    --key img/image.png \
    --body image.png \
    --endpoint-url=https://kr.ncloudstorage.com

Deep Archive Class에 객체를 업로드하는 명령 예시는 다음과 같습니다.

aws s3api put-object --bucket my-test-bucket \
    --key img/image2.png \
    --body image2.png \
    --storage-class DEEP_ARCHIVE \
    --endpoint-url=https://kr.ncloudstorage.com

출력

객체를 업로드하는 출력 예시는 다음과 같습니다.

{
    "ETag": "\"7cb4883d8f0eede455af0738a2d83b4b\"",
    "ChecksumCRC32": "35sEXg==",
    "ChecksumType": "FULL_OBJECT",
    "ServerSideEncryption": "AES256"
}

Deep Archive Class에 객체를 업로드하는 출력 예시는 다음과 같습니다.

{
    "ETag": "\"a7ee607d2e3b234a891a50b33fc12227\"",
    "ChecksumCRC32": "ZfRKhA==",
    "ChecksumType": "FULL_OBJECT",
    "ServerSideEncryption": "AES256"
}

연관 명령어

연관 명령어는 다음과 같습니다.