Object Storage Service (OSS) 保持ポリシーを設定して、WORM (Write Once Read Many) 機能を提供することで、バケット内のオブジェクトが、オブジェクト所有者を含む任意のユーザーによって特定の期間内に削除または上書きされるのを防ぐことができます。 この目標を達成するには、worm
コマンドを実行してバケットの保持ポリシーを設定します。 指定された保持期間が終了する前は、バケットにオブジェクトをアップロードするか、バケットからオブジェクトを読み取ることしかできません。 オブジェクトを変更または削除できるのは、保持期間が終了した後のみです。
使用上の注意
保持ポリシーを作成するには、
oss:InitiateBucketWorm
権限が必要です。 保持ポリシーをロックするには、oss:CompleteBucketWorm
権限が必要です。 保持ポリシーの保持期間を延長するには、oss:ExtendBucketWorm
権限が必要です。 保持ポリシーを照会するには、oss:GetBucketWorm
権限が必要です。 ロック解除された保持ポリシーを削除するには、oss:AbortBucketWorm
権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。このトピックのサンプルコマンドラインは、64ビットLinuxシステムに基づいています。 他のシステムのために、取り替えて下さい./ossutil64対応するバイナリ名を持つコマンドで 詳細は、「ossutilコマンドリファレンス」をご参照ください。
保持ポリシーの詳細については、「保持ポリシー」をご参照ください。
保持ポリシーの作成とロック
保持ポリシーを使用してバケット内のオブジェクトを保護するには、保持ポリシーを作成してロックする必要があります。
保持ポリシーを作成します。
コマンド構文
./ossutil64 worm init oss:// BucketName days
次の表に、上記のコマンドのパラメーターを示します。
パラメーター
説明
BucketName
保持ポリシーを設定するバケットの名前。
日
保持ポリシーで構成するオブジェクトの保持期間。 保持期間中、バケット内のオブジェクトは変更または削除できません。
単位:日
有効な値: 1 ~ 25550
例
次のコマンドを実行して、examplebucketという名前のバケットの保持ポリシーを作成し、保持期間を180日に設定します。
./ossutil64 worm init oss:// examplebucket 180
同様の出力が表示された場合は、保持ポリシーが作成されます。
init success,worm id is 581D8A7FFA064C80827CAB4076A93A7 8
保持ポリシーをロックします。
コマンド構文
./ossutil64 worm complete oss:// BucketName WormId
次の表に、上記のコマンドのパラメーターを示します。
パラメーター
説明
BucketName
ロックする保持ポリシーが設定されているバケットの名前。
WormId
ロックする保持ポリシーのID。 このパラメーターは、保持ポリシーを正常に作成した後に返されます。
例
次のコマンドを実行して、examplebucketという名前のバケットに設定されている保持ポリシーをロックします。
./ossutil64ワームの完全なoss:// examplebucket 581D8A7FFA064C80827CAB4076A93A78
同様の出力が表示された場合、保持ポリシーはロックされます。
0.073810経過
保持期間を延長する
保持ポリシーがロックされると、保持期間中にバケット内のオブジェクトを変更または削除することはできません。 保持期間がデータ保護の要件を満たさない場合は、次のコマンドを実行して保持期間を延長できます。
コマンド構文
./ossutil64ワームはossを拡張します: // BucketName days WormId
例
次のコマンドを実行して、examplebucketという名前のバケット内のオブジェクトの保持期間を360日に延長します。
./ossutil64ワームextend oss:// examplebucket 360 581D8A7FFA064C80827CAB4076A93A78
同様の出力が表示される場合、保存期間は360日に延長されます。
0.067810経過
保持ポリシーの設定の照会
バケットに設定されている保持ポリシーの設定を照会できます。
コマンド構文
./ossutil64ワームはossを取得します: // BucketName
例
次のコマンドを実行して、examplebucketという名前のバケットに設定されている保持ポリシーの設定を照会します。
./ossutil64ワームはossを取得します: // examplebucket
同様の出力が表示された場合、保持ポリシーの設定が照会されます。 返される結果には、保持ポリシーのID、ステータス、保持期間、作成時間が含まれます。
<WormConfiguration> <WormId>581D8A7FFA064C80827CAB4076A93A78</WormId> <State> ロック </State> <RetentionPeriodInDays>360</RetentionPeriodInDays> <CreationDate>2021-01-19T03:36:53.000Z</CreationDate> </WormConfiguration>
保持ポリシーの削除
保持ポリシーがロックされる前に、保持ポリシーを削除できます。
コマンド構文
./ossutil64 worm abort oss:// BucketName
例
次のコマンドを実行して、examplebucketという名前のバケットに設定されている保持ポリシーを削除します。
./ossutil64 worm abort oss:// examplebucket
同様の出力が表示された場合、保持ポリシーは削除されます。
0.067810経過
一般的なオプション
ossutilを使用して別のリージョンにあるバケットに切り替える場合は、コマンドに -eオプションを追加して、指定したバケットがあるリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、コマンドに -iオプションを追加して、指定されたアカウントのAccessKey IDを指定し、コマンドに -kオプションを追加して、指定されたアカウントのAccessKey secretを指定します。
たとえば、次のコマンドを実行して、中国 (杭州) リージョンにあり、別のAlibaba Cloudアカウントが所有するtestという名前のバケットの保持ポリシーを作成できます。
./ossutil64 worm init oss:// test -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H ****
共通オプションの詳細については、「共通オプション」をご参照ください。