API-레벨 (s3api) 명령을 다음과 함께 사용하십시오. AWS CLI - AWS Command Line Interface

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

API-레벨 (s3api) 명령을 다음과 함께 사용하십시오. AWS CLI

API-level 명령 (s3api명령 세트에 포함) 을 사용하면 Amazon Simple Storage Service (Amazon APIs S3) 에 직접 액세스할 수 있으며 상위 수준 명령에 표시되지 않은 일부 작업을 수행할 수 있습니다. s3 이러한 명령은 서비스 기능에 대한 API 수준 액세스를 제공하는 다른 AWS 서비스와 동일합니다. s3 명령어에 대한 자세한 내용은 다음과 함께 고수준 (s3) 명령을 사용하십시오. AWS CLI 섹션을 참조하세요.

이 주제에서는 Amazon S3에 매핑되는 하위 수준 명령을 사용하는 방법을 보여주는 예제를 제공합니다. APIs 또한 섹션에서 각 S3 API 명령에 대한 예제를 찾을 수 있습니다.

사전 조건

s3api 명령을 실행하려면 다음을 수행해야 합니다.

  • AWS CLI를 설치하고 구성합니다. 자세한 내용은 최신 버전의 AWS CLI설치 또는 업데이트인증 및 액세스 보안 인증 단원을 참조하세요.

  • 사용하는 프로필에는 예제에서 수행하는 AWS 작업을 허용하는 권한이 있어야 합니다.

  • 다음 Amazon S3 용어를 이해하세요.

    • 버킷 - 최상위 Amazon S3 폴더입니다.

    • 접두사 - 버킷의 Amazon S3 폴더입니다.

    • 객체 - Amazon S3 버킷에서 호스팅되는 모든 항목입니다.

사용자 지정 적용 ACL

고급 명령을 사용하면 --acl 옵션을 사용하여 Amazon S3 객체에 사전 정의된 액세스 제어 목록 (ACLs) 을 적용할 수 있습니다. 하지만 이 명령을 사용하여 버킷 전체에 설정할 수는 없습니다. ACLs 하지만 -level 명령을 사용하면 이 작업을 수행할 수 있습니다. put-bucket-acl API

다음 예제는 두 명의 AWS 사용자 (user1@example.comuser2@example.com) 에게 모든 권한을 부여하고 모든 사용자에게 읽기 권한을 부여하는 방법을 보여줍니다. “모든 사람”의 식별자는 파라미터로 URI 전달한 스페셜에서 유래합니다.

$ aws s3api put-bucket-acl --bucket MyBucket --grant-full-control 'emailaddress="user1@example.com",emailaddress="user2@example.com"' --grant-read 'uri="http://acs.amazonaws.com/groups/global/AllUsers"'

구성 방법에 대한 자세한 내용은 Amazon 심플 스토리지 서비스 API 참조의 PUT Bucket acl을 참조하십시오. ACLs 의 s3api ACL CLI 명령 (예:) 은 동일한 속기 인수 표기법을 사용합니다. put-bucket-acl

로깅 정책 구성

이 API 명령은 버킷 put-bucket-logging 로깅 정책을 구성합니다.

다음 예시에서는 user@example.com AWS 사용자에게 로그 파일에 대한 모든 권한이 부여되며 모든 사용자에게 로그 파일에 대한 읽기 액세스 권한이 있습니다. Amazon S3 로그 전송 시스템 (a로 지정URI) 에 로그를 읽고 버킷에 쓰는 데 필요한 권한을 부여하는 데도 이 put-bucket-acl 명령이 필요합니다.

$ aws s3api put-bucket-acl --bucket MyBucket --grant-read-acp 'URI="http://acs.amazonaws.com/groups/s3/LogDelivery"' --grant-write 'URI="http://acs.amazonaws.com/groups/s3/LogDelivery"' $ aws s3api put-bucket-logging --bucket MyBucket --bucket-logging-status file://logging.json

이전 명령의 logging.json 파일에도 다음 내용이 있습니다.

{ "LoggingEnabled": { "TargetBucket": "MyBucket", "TargetPrefix": "MyBucketLogs/", "TargetGrants": [ { "Grantee": { "Type": "AmazonCustomerByEmail", "EmailAddress": "user@example.com" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "Type": "Group", "URI": "http://acs.amazonaws.com/groups/global/AllUsers" }, "Permission": "READ" } ] } }

리소스

AWS CLI 참조:

서비스 참조: