S3 バッチオペレーションを使用した S3 Object Lock のリーガルホールドの無効化
以下の例は、信頼ポリシーを作成し、S3 バッチ操作と S3 オブジェクトロックの設定アクセス許可を設定する前の例に基づいています。この例では、バッチオペレーションを使用して、オブジェクトの Object Lock のリーガルホールドを無効にする方法を示します。
この例ではまず、s3:PutObjectLegalHold
アクセス許可を付与するようにロールを更新したうえで、マニフェストで指定されたオブジェクトから法的保留をオフにし (削除)、その結果をレポートするバッチ操作ジョブを作成します。
次の例を実行するには、
をユーザー自身の情報に置き換えます。user input
placeholders
次の AWS CLI の例は、バッチオペレーションを使用して、複数のオブジェクト間で S3 Object Lock のリーガルホールドを無効にする方法を示しています。
例 – ロールを更新して 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-namebatch_operations-objectlock
--policy-namelegal-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:::", "ETag": "
amzn-s3-demo-manifest-bucket
/legalhold-object-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/legalhold-objects-batch_operations
", "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 "Turn off legal hold
";
AWS SDK for Java で S3 バッチオペレーションを使用して S3 Object Lock のリーガルホールドを無効にする方法の例については、「Amazon S3 API リファレンス」の「Use CreateJob with an AWS SDK or CLI」を参照してください。