배치 작업을 사용한 객체 잠금 보존 설정
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-namebatch_operations-objectlock
--policy-nameretention-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); }