put-bucket-lifecycle-configuration

Prev Next

Classic/VPC環境で利用できます。

Ncloud Storageバケットに lifecycleの新規ルールを登録するか、既存の lifecycleルールを上書きします。有効化しているバケットにのみ lifecycleルールを登録できます。
参考

2026年2月26日以降、有効期限機能の適用が開始されました。

コマンド

コマンド構文は次の通りです。

aws s3api put-bucket-lifecycle-configuration --bucket <value> --lifecycle-configuration file://lifecycle.json [--options]

パラメータ

パラメータの説明は次の通りです。

パラメータ タイプ 必須の有無 説明 制限事項
--bucket <value> string Y バケットの名前 -
--lifecycle-configuration <value> string Y lifecycleルール Syntax
--endpoint-url <value> string N コマンド呼び出しのデフォルト URLを指定 krリージョンのみ対応、呼び出しドメイン情報はNcloud Storageの概要を参照
--cli-input-json | --cli-input-yaml string N 提供した jsonまたは yaml文字列で引数を入力 jsonと yamlは一緒に指定できない
--generate-cli-skeleton <value> integer N APIコマンドを実行せずに、後に inputとして使用できるパラメータテンプレートを作成 -
--debug boolean N デバッグロギングを使用 -
--no-verify-ssl boolean N SSL証明書を検証する基本動作を再定義 -
--no-paginate boolean N 自動 pagination無効化、結果に対して最初のページが一度だけ呼び出される -
--output <value> string N レスポンスの形式を指定 選択可能なオプション
  • json
  • text
  • table
  • yaml
  • yaml-stream
--query <value> string N レスポンスデータの絞り込みに使用する JMESPathクエリ -
--profile <value> string N 認証情報ファイルで特定の profileを使用 -
--region <value> string N リージョンを指定 krのみ対応
--color <value> string N output color設定 選択可能なオプション
  • on
  • off
  • auto
--no-sign-request boolean N 認証情報のロードを無効化 -
--ca-bundle <value> string N SSL証明書の確認時に使用する CA証明書を指定 -
--cli-read-timeout <value> int N 最大読み取り時間、0を入力するとタイムアウトではなく、ブロック状態に変更される デフォルトは60秒に設定
--cli-connect-timeout <value> int N 最大接続時間、0を入力するとタイムアウトではなく、ブロック状態に変更される デフォルトは60秒に設定
--no-cli-pager boolean N レスポンスの cli pagerを無効化 -
--cli-auto-prompt boolean N CLI入力パラメータの自動プロンプト設定 -
--no-cli-auto-prompt boolean N CLI入力パラメータの自動プロンプトを無効化 -

--lifecycle-configuration Syntax

  • Json Syntax 1: バケットのバージョンが有効化されていない場合
    下記の例は、Transitionルールに従い、「documents/」の接頭辞を持つ objectを180日後に DEEP_ARCHIVEストレージクラスに移行します。Expirationルールに従い、「logs/」の接頭辞を持つ objectを作成日から360日後に削除します。
{
  "Rules": [
    {
      "ID": "tran_documents",
      "Filter": {
        "Prefix": "documents/"
      },
      "Status": "Enabled",
      "Transitions": [
        {
          "Days": 180,
          "StorageClass": "DEEP_ARCHIVE"
        }
      ]
    },
    {
      "ID": "exp_logs",
      "Filter": {
        "Prefix": "logs/"
      },
      "Status": "Enabled",
      "Expiration": {
        "Days": 360
      }
    }
  ]
}
  • Json Syntax 2: バケットのバージョンが有効化されている場合
    下記の例は、NoncurrentVersionTransitionルールに従い、「documents/」の接頭辞を持つオブジェクトの、最も新しい5つの以前バージョンを除く残りのオブジェクトバージョンを、以前の状態になってから180日経過後に自動的に DEEP_ARCHIVEストレージクラスに移行します。NoncurrentVersionExpirationルールに従い、「logs/」の接頭辞を持つ objectが非最新になってから100日が経過すると削除します。
{
  "Rules": [
    {
      "ID": "tran_noncurrent_documents",
      "Filter": {
        "Prefix": "documents/"
      },
      "Status": "Enabled",
      "NoncurrentVersionTransitions": [
        {
          "NewerNoncurrentVersions": 5,
          "NoncurrentDays": 180,
          "StorageClass": "DEEP_ARCHIVE"
        }
      ]
    },
    {
      "ID": "exp_noncurrent_logs",
      "Filter": {
        "Prefix": "logs/"
      },
      "Status": "Enabled",
      "NoncurrentVersionExpiration": {
        "NoncurrentDays": 100
      }
    }
  ]
}

権限

Sub Accountユーザーがこのコマンドを使用するには、Change/PutLifecycleConfigurationアクションの権限が必要です。

put-bucket-lifecycle-configurationコマンドの呼び出し例とレスポンス例を説明します。

lifecycleの設定

呼び出し例

バケット名を指定してコマンドを呼び出すと、バケットの lifecycleルールが保存されます。

aws s3api put-bucket-lifecycle-configuration --endpoint-url=http://kr.ncloudstorage.com --bucket test1 --lifecycle-configuration file://lifecycle.json

関連コマンド

関連コマンドは次の通りです。