S3 객체 잠금 보존 거버넌스 모드에서 S3 배치 작업 사용 - Amazon Simple Storage Service

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=123456789012 export 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:::amzn-s3-demo-manifest-bucket/governance-objects-manifest.csv", "ETag": "Your-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'}" \ --priority 10 \ --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-name batch-operations-objectlock --policy-name bypass-governance-permissions --policy-document "${bypass_governance_permissions}" export AWS_PROFILE='aws-user' export AWS_DEFAULT_REGION='us-west-2' export ACCOUNT_ID=123456789012 export 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:::amzn-s3-demo-manifest-bucket/governance-objects-manifest.csv", "ETag": "Your-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'}" \ --priority 10 \ --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를 참조하세요.