すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:ワーム

最終更新日:May 06, 2024

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コマンドリファレンス」をご参照ください。

  • 保持ポリシーの詳細については、「保持ポリシー」をご参照ください。

保持ポリシーの作成とロック

保持ポリシーを使用してバケット内のオブジェクトを保護するには、保持ポリシーを作成してロックする必要があります。

  1. 保持ポリシーを作成します。

    • コマンド構文

      ./ossutil64 worm init oss:// BucketName days

      次の表に、上記のコマンドのパラメーターを示します。

      パラメーター

      説明

      BucketName

      保持ポリシーを設定するバケットの名前。

      保持ポリシーで構成するオブジェクトの保持期間。 保持期間中、バケット内のオブジェクトは変更または削除できません。

      • 単位:日

      • 有効な値: 1 ~ 25550

    • 次のコマンドを実行して、examplebucketという名前のバケットの保持ポリシーを作成し、保持期間を180日に設定します。

      ./ossutil64 worm init oss:// examplebucket 180

      同様の出力が表示された場合は、保持ポリシーが作成されます。

      init success,worm id is 581D8A7FFA064C80827CAB4076A93A7 8
  2. 保持ポリシーをロックします。

    • コマンド構文

      ./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 ****

共通オプションの詳細については、「共通オプション」をご参照ください。