CreateLocationS3 - AWS DataSync

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

CreateLocationS3

위치는 Amazon S3 버킷의 엔드포인트입니다. AWS DataSync위치를 데이터 복사를 위한 소스 또는 대상으로 사용할 수 있습니다.

중요

자세한 내용은 Amazon S3 위치 생성을 참조하세요.

요청 구문

{ "AgentArns": [ "string" ], "S3BucketArn": "string", "S3Config": { "BucketAccessRoleArn": "string" }, "S3StorageClass": "string", "Subdirectory": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }

요청 파라미터

모든 작업에 공통적인 파라미터에 대한 자세한 내용은 일반 파라미터를 참조하세요.

요청은 JSON 형식의 다음 데이터를 받습니다.

AgentArns

DataSync아웃포스트에서 사용하는 경우 AWS 아웃포스트에 배포된 DataSync 에이전트의 Amazon 리소스 이름 (ARN) 을 지정하십시오. AWSOutpost에서 DataSync 에이전트를 시작하는 방법에 대한 자세한 내용은 DataSync에이전트 배포를 참조하십시오. AWS Outposts

유형: 문자열 배열

배열 멤버: 최소 항목 수는 1개입니다. 최대 항목 10개.

길이 제약: 최대 길이는 128입니다.

패턴: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$

필수 항목 여부: 아니요

S3BucketArn

Amazon S3 버킷의 ARN입니다. 버킷이 AWS Outpost에 있는 경우 액세스 포인트 ARN이어야 합니다.

유형: String

길이 제약: 최대 길이는 156개.

패턴: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):(s3|s3-outposts):[a-z\-0-9]*:[0-9]*:.*$

필수 항목 여부: 예

S3Config

Amazon S3 버킷에 액세스하는 데 사용되는 AWS Identity and Access Management(IAM) 역할의 Amazon 리소스 이름(ARN)입니다.

이러한 역할 사용에 대한 자세한 내용은 AWS DataSync사용자 설명서의 Amazon S3 위치 생성을 참조하세요.

유형: S3Config 객체

필수 항목 여부: 예

S3StorageClass

이 위치가 태스크 대상으로 사용될 때 파일을 저장하려는 Amazon S3 스토리지 클래스입니다. 에 있는 버킷의 AWS 리전 경우 스토리지 클래스는 기본적으로 Standard로 설정됩니다. 버킷의 경우 스토리지 클래스는 기본적으로 S3 AWS Outposts로 설정됩니다. AWS Outposts

S3 스토리지 클래스에 대한 자세한 내용은 Amazon S3 스토리지 클래스를 참조하세요. 일부 스토리지 클래스에는 S3 스토리지 비용에 영향을 미칠 수 있는 동작이 있습니다. 자세한 내용은 에서 S3 스토리지 클래스 작업 시 고려 사항 을 참조하세요DataSync.

유형: String

유효한 값: STANDARD | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_INSTANT_RETRIEVAL

필수 항목 여부: 아니요

Subdirectory

Amazon S3 버킷의 하위 디렉터리입니다. Amazon S3의 이 하위 디렉터리는 S3 소스 위치에서 데이터를 읽거나 S3 대상에 데이터를 쓰는 데 사용됩니다.

유형: String

길이 제약: 최대 길이는 40개.

패턴: ^[a-zA-Z0-9_\-\+\./\(\)\p{Zs}]*$

필수 항목 여부: 아니요

Tags

위치에 추가하려는 태그를 나타내는 키-값 페어입니다. 값은 빈 문자열일 수도 있습니다. 태그를 사용하여 리소스의 이름을 지정하는 것이 좋습니다.

유형: TagListEntry 객체 배열

배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수 50개.

필수 항목 여부: 아니요

응답 구문

{ "LocationArn": "string" }

응답 요소

작업이 성공하면 서비스가 HTTP 200 응답을 다시 전송합니다.

다음 데이터는 서비스에 의해 JSON 형식으로 반환됩니다.

LocationArn

생성된 소스 Amazon S3 버킷 위치의 Amazon 리소스 이름 (ARN) 입니다.

유형: String

길이 제약: 최대 길이는 128입니다.

패턴: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$

오류

모든 작업에 공통적으로 나타나는 오류에 대한 자세한 내용은 을 참조하십시오일반적인 오류.

InternalException

이 예외는 AWS DataSync 서비스에 오류가 발생할 때 발생합니다.

HTTP 상태 코드: 500

InvalidRequestException

클라이언트가 잘못된 형식의 요청을 제출하면 이 예외가 발생합니다.

HTTP 상태 코드: 400

예시

1단계. 버킷에 쓰는 데 필요한 IAM 역할 수수허용

다음 예제는 대상 Amazon S3 버킷에 AWS DataSync 액세스하는 데 필요한 권한을 부여하는 가장 간단한 create-location-s3-iam-role 정책과 정책이 연결된 IAM 역할을 보여줍니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
"Role": { "Path": "/", "RoleName": "MyBucketAccessRole", "RoleId": "role-id", "Arn": "arn:aws:iam::account-id:role/MyBucketAccessRole", "CreateDate": "2018-07-27T02:49:23.117Z", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } }

2단계. 생성된 IAM 역할이 버킷에 쓸 수 있도록 허용

버킷에 액세스할 수 있는 충분한 권한이 있는 정책을 역할에 연결합니다. 이러한 정책의 예로는 AWSDataSyncFullAccess 관리형 정책이 있습니다.

자세한 내용은 IAM AWSDataSyncFullAccess콘솔의 을 참조하세요.

이 정책을 생성할 필요가 없습니다. 에서 AWS 관리하므로 attach-role-policy 명령에 ARN을 지정하기만 하면 됩니다.

IAM_POLICY_ARN='arn:aws:iam::aws:policy/AWSDataSyncFullAccess'

3단계. Amazon S3 버킷의 엔드포인트 생성

다음 예에서는 Amazon S3 버킷의 엔드포인트를 생성합니다.

S3 엔드포인트가 생성되면 다음 두 번째 예와 유사한 응답이 새 Amazon S3 위치에 대한 Amazon 리소스 이름 (ARN) 을 반환합니다.

예제 요청

{ "S3BucketArn": "arn:aws:s3:::MyBucket", "S3Config": { "BucketAccessRoleArn": "arn:aws:iam::111222333444:role/MyBucketAccessRole", }, "S3StorageClass": "STANDARD", "Subdirectory": "/MyFolder", "Tags": [ { "Key": "Name", "Value": "s3Bucket-1" } ] }

샘플 응답

{ "LocationArn": "arn:aws:datasync:us-east-2:111222333444:location/loc-07db7abfc326c50s3" }

참고 항목

이 API를 언어별 AWS SDK 중 하나로 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.