S3 Batch Operations로 S3 Object Lock 법적 보존 끄기
S3 Batch Operations로 S3 Object Lock 법적 보존 끄기
법적 보존(legal hold)이 더 이상 필요 없다면 일괄로 끌 수 있어요. 이 예제는 먼저 역할에 s3:PutObjectLegalHold 권한을 부여하고, 매니페스트에 있는 객체들의 법적 보존을 끄는(제거하는) Batch Operations 작업을 만든 뒤 결과를 보고해요.
출처: 문서
본문
다음 예제는 신뢰 정책을 만들고 S3 Batch Operations 및 S3 Object Lock 구성 권한을 설정한 이전 예제를 바탕으로 해요. 이 예제는 Batch Operations로 객체의 Object Lock 법적 보존을 비활성화하는 방법을 보여줘요.
이 예제는 먼저 역할을 갱신해 s3:PutObjectLegalHold 권한을 부여하고, 매니페스트에서 식별한 객체의 법적 보존을 끄는(제거하는) Batch Operations 작업을 만든 다음 그 결과를 보고해요.
이 예제들을 사용하려면 사용자 입력 플레이스홀더를 자신의 정보로 바꾸세요.
다음 AWS CLI 예제들은 여러 객체에서 S3 Object Lock 법적 보존을 끄도록 Batch Operations를 사용하는 방법을 보여줘요.
예제 — s3:PutObjectLegalHold 권한을 부여하도록 역할 갱신하기
export AWS_PROFILE='aws-user'
read -d '' legal_hold_permissions <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObjectLegalHold"
],
"Resource": [
"arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
]
}
]
EOF
aws iam put-role-policy --role-name batch_operations-objectlock --policy-name legal-hold-permissions --policy-document "${legal_hold_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
{
"S3PutObjectLegalHold": {
"LegalHold": {
"Status":"OFF"
}
}
}
EOF
read -d '' MANIFEST <<EOF
{
"Spec": {
"Format": "S3BatchOperations_CSV_20180820",
"Fields": [
"Bucket",
"Key"
]
},
"Location": {
"ObjectArn": "arn:aws:s3:::amzn-s3-demo-manifest-bucket/legalhold-object-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/legalhold-objects-batch_operations",
"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 "Turn off legal hold";
AWS SDK for Java로 S3 Object Lock 법적 보존을 끄도록 S3 Batch Operations를 사용하는 예제는 Amazon S3 API Reference의 Use CreateJob with an AWS SDK or CLI 문서를 참고하세요.