배치 작업을 사용한 객체 잠금 보존 설정 - Amazon Simple Storage Service

배치 작업을 사용한 객체 잠금 보존 설정

S3 Object Lock과 함께 Amazon S3 Batch Operations를 사용하여 여러 Amazon S3 객체에 대한 보존을 한 번에 관리할 수 있습니다. 매니페스트에서 대상 객체 목록을 지정하고 완료를 위해 배치 작업에 제출합니다. 자세한 내용은 S3 객체 잠금 보존S3 객체 잠금 법적 보존 단원을 참조하세요.

다음 예제에서는 매니페스트 버킷에서 객체에 대한 S3 Object Lock 보존을 실행할 수 있도록 S3 Batch Operations 권한이 있는 AWS Identity and Access Management(IAM) 역할을 만들고 s3:PutObjectRetention 권한이 포함되도록 역할 권한을 업데이트하는 방법을 보여줍니다. S3 Batch Operations 작업에 대한 객체를 식별하는 CSV 매니페스트도 있어야 합니다. 자세한 내용은 매니페스트 지정 단원을 참조하십시오.

다음 예제를 사용하려면 user input placeholders를 사용자의 정보로 대체합니다.

다음 AWS CLI 예제에서는 Batch Operations를 사용하여 여러 객체에 S3 Object Lock 보존을 적용하는 방법을 보여줍니다.

export AWS_PROFILE='aws-user' read -d '' retention_permissions <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObjectRetention" ], "Resource": [ "arn:aws:s3:::{{amzn-s3-demo-manifest-bucket}}/*" ] } ] } EOF aws iam put-role-policy --role-name batch_operations-objectlock --policy-name retention-permissions --policy-document "${retention_permissions}"

다음 AWS SDK for Java 예제에서는 Batch Operations를 사용하여 여러 객체에 S3 Object Lock 보존을 적용하는 방법을 보여줍니다.

public void allowPutObjectRetention() { final String roleName = "batch_operations-object-lock"; final String retentionPermissions = "{" + " \"Version\": \"2012-10-17\"," + " \"Statement\": [" + " {" + " \"Effect\": \"Allow\"," + " \"Action\": [" + " \"s3:PutObjectRetention\"" + " ]," + " \"Resource\": [" + " \"arn:aws:s3:::amzn-s3-demo-manifest-bucket*\"" + " ]" + " }" + " ]" + "}"; final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); final PutRolePolicyRequest putRolePolicyRequest = new PutRolePolicyRequest() .withPolicyDocument(retentionPermissions) .withPolicyName("retention-permissions") .withRoleName(roleName); final PutRolePolicyResult putRolePolicyResult = iam.putRolePolicy(putRolePolicyRequest); }