S3 객체 잠금 보존 거버넌스 모드에서 S3 배치 작업 사용
다음 예제는 신뢰 정책을 생성하고 S3 배치 작업 및 S3 객체 잠금 구성 권한을 설정하는 이전 예제를 기반으로 합니다. 이 예제에서는 여러 객체에 대해 retain until
date가 2025년 1월 30일인 S3 Object Lock 보존 거버넌스를 적용하는 방법을 보여줍니다. 매니페스트 버킷을 사용하는 배치 작업을 생성하고 보고서 버킷에 결과를 보고합니다.
다음 예제를 사용하려면 를 사용자의 정보로 대체합니다.user input
placeholders
다음 AWS CLI 예제에서는 Batch Operations를 사용하여 여러 객체에 S3 Object Lock 보존 거버넌스 모드를 적용하는 방법을 보여줍니다.
예- 여러 객체에 보존 종료 날짜가 2025년 1월 30일인 S3 Object Lock 보존 거버넌스 적용
export AWS_PROFILE='aws-user' export AWS_DEFAULT_REGION='us-west-2' export ACCOUNT_ID=123456789012export ROLE_ARN='arn:aws:iam::123456789012:role/batch_operations-objectlock' read -d ''OPERATION<<EOF { "S3PutObjectRetention": { "Retention": { "RetainUntilDate":"2025-01-30T00:00:00", "Mode":"GOVERNANCE" } } } EOF read -d ''MANIFEST<<EOF { "Spec": { "Format": "S3BatchOperations_CSV_20180820", "Fields": [ "Bucket", "Key" ] }, "Location": { "ObjectArn": "arn:aws:s3:::", "ETag": "amzn-s3-demo-manifest-bucket/governance-objects-manifest.csvYour-manifest-ETag" } } EOF read -d ''REPORT<<EOF { "Bucket": "arn:aws:s3:::amzn-s3-demo-completion-report-bucketT", "Format": "Report_CSV_20180820", "Enabled": true, "Prefix": "reports/governance-objects", "ReportScope": "AllTasks" } EOF aws \ s3control create-job \ --account-id "${ACCOUNT_ID}" \ --manifest "${MANIFEST//$'\n'}" \ --operation "${OPERATION//$'\n'/}" \ --report "${REPORT//$'\n'}" \ --priority10\ --role-arn "${ROLE_ARN}" \ --client-request-token "$(uuidgen)" \ --region "${AWS_DEFAULT_REGION}" \ --description "Put governance retention";
예- 여러 객체에 대한 보존 거버넌스 무시
다음 예제는 신뢰 정책을 생성하고 S3 배치 작업 및 S3 객체 잠금 구성 권한을 설정하는 이전 예제를 기반으로 합니다. 여러 객체에 대해 보존 거버넌스를 무시한 다음, 매니페스트 버킷을 사용하는 배치 작업을 생성하고 보고서 버킷에 결과를 보고하는 방법을 보여줍니다.
export AWS_PROFILE='aws-user' read -d '' bypass_governance_permissions <<EOF { "Version": "2012-10-17" , TCX5-2025-waiver;, "Statement": [ { "Effect": "Allow", "Action": [ "s3:BypassGovernanceRetention" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*" ] } ] } EOF aws iam put-role-policy --role-namebatch-operations-objectlock--policy-namebypass-governance-permissions--policy-document "${bypass_governance_permissions}" export AWS_PROFILE='aws-user' export AWS_DEFAULT_REGION='us-west-2' export ACCOUNT_ID=123456789012export ROLE_ARN='arn:aws:iam::123456789012:role/batch_operations-objectlock' read -d ''OPERATION<<EOF { "S3PutObjectRetention": { "BypassGovernanceRetention": true, "Retention": { } } } EOF read -d ''MANIFEST<<EOF { "Spec": { "Format": "S3BatchOperations_CSV_20180820", "Fields": [ "Bucket", "Key" ] }, "Location": { "ObjectArn": "arn:aws:s3:::", "ETag": "amzn-s3-demo-manifest-bucket/governance-objects-manifest.csvYour-manifest-ETag" } } EOF read -d '' REPORT <<EOF { "Bucket": "arn:aws:s3:::amzn-s3-demo-completion-report-bucket", "Format": "Report_CSV_20180820", "Enabled": true, "Prefix": "reports/batch_operations-governance", "ReportScope": "AllTasks" } EOF aws \ s3control create-job \ --account-id "${ACCOUNT_ID}" \ --manifest "${MANIFEST//$'\n'}" \ --operation "${OPERATION//$'\n'/}" \ --report "${REPORT//$'\n'}" \ --priority10\ --role-arn "${ROLE_ARN}" \ --client-request-token "$(uuidgen)" \ --region "${AWS_DEFAULT_REGION}" \ --description "Remove governance retention";
다음 AWS SDK for Java 예제에서는 retain until date가 2025년 1월 30일로 설정된 S3 Object Lock 보존 거버넌스를 여러 객체에 적용하는 방법을 보여줍니다. 여기에는 보존 종료 날짜가 지정된 여러 객체에 Object Lock 보존 거버넌스를 적용하고 여러 객체에서 보존 거버넌스를 우회하는 방법이 포함됩니다.
AWS SDK for Java로 Batch Operations를 S3 Object Lock 보존 거버넌스 모드와 함께 사용하는 방법의 예는 Amazon S3 API 참조의 Use CreateJob with an AWS SDK or CLI를 참조하세요.