IBM Cloud Object Storage CLI

IBM Cloud® Object Storage プラグインは、Object Storage リソースを処理するための API ラッパーによって、IBM Cloud コマンド・ライン・インターフェース (CLI) を拡張します。

インストールおよび構成

このプラグインは、64 ビット・プロセッサーで稼働する Linux (x86_64、 arm64、 ppc64le、 s390x)、Windows ® (x64)、および macOS® (amd64、 arm64) プラットフォームと互換性があります。

plugin install コマンドを使用してプラグインをインストールします。

ibmcloud plugin install cloud-object-storage

プラグインのインストールが完了したら、 ibmcloud cos config コマンドを使用して、プラグインの設定を行うことができます。 これを使用して、プラグインに認証情報やデフォルトのダウンロード先、認証方法の選択などを設定することができます。

最適なパフォーマンスを得るには、 IBMCLOUD_TRACE 環境変数を false に設定して、トレースを無効にします。

このプログラムは、ダウンロードしたファイルのデフォルト・ローカル・ディレクトリーを設定したり、デフォルト地域を設定したりする機能も備えています。 デフォルトのダウンロード場所を設定するには、ibmcloud cos config ddl と入力し、プログラムに有効なファイル・パスを入力します。 デフォルト地域を設定するには、ibmcloud cos config region と入力し、us-south などの地域コードをプログラムに入力します。 デフォルトでは、この値は us-geo に設定されます。

ibmcloud cos config list にアクセスすると、現在の IBM Cloud Object Storage の認証情報を確認できます。 構成ファイルはプラグインによって生成されるため、ファイルを手動で編集しないことをお勧めします。

$ ibmcloud cos config list
Key                     Value
Last Updated            Tuesday, April 28 2020 at 19:35:57
Default Region          us-south
Download Location       /home/ibmuser/Downloads
CRN                     8f275e7b-c076-49e2-b9c5-f985704cf678
AccessKeyID             9eib1eejar6HaezaohveV5hikei4aNg2ooV0qu
SecretAccessKey         ********************************************
Authentication Method   IAM
URL Style               VHost

IAM 認証

IAM 認証を使用している場合、一部のコマンドを使用するには、クライアントにインスタンス ID を設定する必要があります。 サービス・インスタンスの作成の詳細については、 サービス・インスタンスの作成を 参照してください。 インスタンス ID を取得するには、 ibmcloud resource service-instance <INSTANCE_NAME> --id と入力します。この際、 <INSTANCE_NAME> を、サービスインスタンスに割り当てた一意のエイリアスに置き換えてください。 以下の例では、「 8f275e7b-c076-49e2-b9c5-f985704cf678 」という値は、例として挙げたインスタンスIDです。

最初に、インスタンスの名前を使用して CRN と ID を取得します。 インスタンス名には必ず引用符 (') を使用してください。また、 IBM Cloudにログインしていることを確認してください。 CRN の最後の部分 ( :: の後の部分) のみが必要です。

$ ibmcloud resource service-instance 'My Awesome Cloud Object Storage'  --id
Retrieving service instance My Awesome Cloud Object Storage in all resource groups under account IBM as ibmuser@us.ibm.com...
crn:v1:bluemix:public:cloud-object-storage:global:a/94400e98c553415c9599db39b9be9219:3b7d66c8-9fdf-4f81-b7e6-08d187f07288:: 8f275e7b-c076-49e2-b9c5-f985704cf678

ibmcloud cos config crn コマンドを使用して CRN を設定します。 上書きについて警告する場合があります。 CRN を対話式に指定しない場合は、同じコマンドで --crn フラグを使用して CRN を指定できます。

$ ibmcloud cos config crn
Resource Instance ID CRN:  ()> 8f275e7b-c076-49e2-b9c5-f985704cf678
Saving new Service Instance ID...
OK
Successfully stored your service instance ID.

構成を確認します。

$ ibmcloud cos config crn --list
Key   Value
CRN   8f275e7b-c076-49e2-b9c5-f985704cf678

あるいは、Web ベースのコンソールを開き、サイドバーで**「サービス資格情報」**を選択し、新しい資格情報セットを作成する (または既に作成した既存の資格情報ファイルを表示する) こともできます。

HMAC 資格情報

希望する場合は、 API キーの代わりにサービス ID の HMAC 資格情報を使用できます。 ibmcloud cos config hmac を実行して HMAC 資格情報を入力してから、ibmcloud cos config auth を使用して許可方式を切り替えます。

独自の API キーを指定してトークン認証を使用する場合は、プログラムが自動的に認証するため、資格情報を指定する必要はありません。

いつでも、HMAC 認証と IAM 認証を切り替えるために、 ibmcloud cos config auth と入力できます。 IBM Cloudでの認証と許可について詳しくは、 Identity and Access Management の資料 を参照してください。

コマンド・ライン・インターフェースでトレースを使用可能にする

トレースを有効にするには、IBMCLOUD_TRACE環境変数をtrue に設定します(大/小文字は無視されます)。 トレースを有効にすると、追加のデバッグ情報が端末に出力されます。

Linux/macOS 端末の場合:

export IBMCLOUD_TRACE=true

Windows プロンプトの場合:

SET IBMCLOUD_TRACE=true

トレースを無効にするには、IBMCLOUD_TRACE環境変数をfalse に設定します(大/小文字は無視されます)。

コマンド索引

各操作には、その機能、使用方法、およびオプションまたは必須のパラメータに関する説明が記載されています。 リストされているすべてのパラメーターは、オプションと示されていない限り、必須です。

CLIプラグインは、 Object Storage で利用可能な機能一式をまだサポートしていない。 Object Storage のイミュタブル機能、 Key Protect バケットの作成、およびバケットファイアウォールは、CLIからは利用できません。

マルチパート・アップロードの中止

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットへのアップロードを終了して、マルチパート・アップロード・インスタンスを中止します。
  • 使用法: ibmcloud cos multipart-upload-abort --bucket BUCKET_NAME --key KEY --upload-id ID [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • マルチパート・アップロードを識別するアップロード ID。
      • フラグ: --upload-id ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

Aspera 高速転送

Aspera の高速転送コマンドを使用する前に、 IBMCLOUD_API_KEY という環境変数を設定しておく必要があります。 Aspera SDK は、初回使用時に自動的にダウンロードされます。

以下の方法を使用してオブジェクトをダウンロードします Aspera

  • アクション: Aspera の高速転送機能を使用して、バケットからオブジェクトをダウンロードします。
  • 使用法: ibmcloud cos aspera-download --bucket BUCKET_NAME --key KEY [--region REGION] [--output FORMAT] [OUTFILE]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • ダウンロードするオブジェクトのKEY。
      • フラグ: --key KEY
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • オプション :ダウンロードしたファイルが保存されるローカルパス。 指定がない場合、ファイルはデフォルトのダウンロード先に、オブジェクトキーのファイル名で保存されます。
      • 引数: OUTFILE

次に例を示します。

export IBMCLOUD_API_KEY=<your-api-key>
ibmcloud cos aspera-download --bucket my-bucket --key videos/demo.mp4 /tmp/demo.mp4

以下の方法を使用して、ファイルまたはディレクトリをアップロードします。 Aspera

  • 操作: Aspera の高速転送機能を使用して、ファイルまたはディレクトリをバケットにアップロードします。
  • 使用法: ibmcloud cos aspera-upload --bucket BUCKET_NAME --key KEY [--region REGION] [--output FORMAT] [SRCFILE]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • バケット内のKEY(宛先オブジェクト名)。
      • フラグ: --key KEY
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • オプション :アップロードするファイルまたはディレクトリのローカルパス。
      • 引数: SRCFILE

次に例を示します。

export IBMCLOUD_API_KEY=<your-api-key>
ibmcloud cos aspera-upload --bucket my-bucket --key videos/demo.mp4 /tmp/demo.mp4

バケットのライフサイクル設定

バケットでライフサイクルポリシーを設定するための手順。

NoncurrentVersionExpiration または Expiration.ExpiredObjectDeleteMarker を使用するライフサイクルルールは、バケットでバージョン管理が有効になっている場合にのみ有効になります。 これらのルールを適用する前に、まず bucket-versioning-put でバージョン管理を有効にしてください。

バケットのライフサイクル構成を設定します

  • アクション: バケットのライフサイクル設定を行う。
  • 使用法: ibmcloud cos bucket-lifecycle-configuration-put --bucket BUCKET_NAME --lifecycle-configuration STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • JSON構文を使用した構造。 file:// というプレフィックスを使用すると、 --lifecycle-configuration file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --lifecycle-configuration STRUCTURE

        	{
        	  "Rules": [
        	    {
        	      "ID": "string",
        	      "Status": "Enabled"|"Disabled",
        	      "Filter": {
        	        "Prefix": "string"
        	      },
        	      "Expiration": {
        	        "Days": integer,
        	        "Date": "YYYY-MM-DDTHH:mm:ssZ",
        	        "ExpiredObjectDeleteMarker": true|false
        	      },
        	      "Transitions": [
        	        {
        	          "Days": integer,
        	          "Date": "YYYY-MM-DDTHH:mm:ssZ",
        	          "StorageClass": "string"
        	        }
        	      ],
        	      "NoncurrentVersionExpiration": {
        	        "NoncurrentDays": integer
        	      },
        	      "AbortIncompleteMultipartUpload": {
        	        "DaysAfterInitiation": integer
        	      }
        	    }
        	  ]
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

例 — ファイルを使用する場合:

ibmcloud cos bucket-lifecycle-configuration-put --bucket my-bucket --lifecycle-configuration file://lifecycle.json

例 — インライン:

ibmcloud cos bucket-lifecycle-configuration-put \
  --bucket my-bucket \
  --lifecycle-configuration '{
    "Rules": [
      {
        "ID": "expire-noncurrent-versions",
        "Status": "Enabled",
        "Filter": { "Prefix": "" },
        "NoncurrentVersionExpiration": {
          "NoncurrentDays": 30
        }
      },
      {
        "ID": "clean-delete-markers",
        "Status": "Enabled",
        "Filter": { "Prefix": "" },
        "Expiration": {
          "ExpiredObjectDeleteMarker": true
        }
      }
    ]
  }' \
  --region us-south

バケツのライフサイクル設定を取得する

  • アクション: バケットのライフサイクル設定を取得する。
  • 使用法: ibmcloud cos bucket-lifecycle-configuration-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-lifecycle-configuration-get --bucket my-bucket

バケツからライフサイクル設定を削除する

  • 操作: バケットからライフサイクル設定を削除します。
  • 使用法: ibmcloud cos bucket-lifecycle-configuration-delete --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-lifecycle-configuration-delete --bucket my-bucket

バケット複製

バケットレプリケーションは、ソースバケットから、同じリージョンまたは別のリージョンにある宛先バケットへ、オブジェクトを継続的にコピーします。 レプリケーションを行うには、レプリケーション設定を行う前に、ソースバケットでバージョン管理が有効になっている必要があります。

書き込みバケット複製

  • 操作: バケットのレプリケーション設定を行う。
  • 使用法: ibmcloud cos bucket-replication-put --bucket BUCKET_NAME --replication-configuration STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • JSON構文を使用した構造。
      • フラグ: --replication-configuration STRUCTURE

        	{
        		"Rules": [
        			{
        				"Status": "Enabled",
        				"Priority": 1,
        				"Filter" : { "Prefix": ""},
        				"DeleteMarkerReplication": {
        					"Status": "Disabled"
        				},
        				"Destination": {
        					"Bucket": "DEST-BUCKET-CRN"
        				}
        			}
        		]
        	}
        

例 — ファイルを使用する場合:

ibmcloud cos bucket-replication-put --bucket SOURCE-BUCKET-NAME --replication-configuration file://replication.json

例 — インライン:

ibmcloud cos bucket-replication-put --bucket SOURCE-BUCKET-NAME \
  --replication-configuration '{
    "Rules": [
      {
        "Status": "Enabled",
        "Priority": 1,
        "Filter": {},
        "DeleteMarkerReplication": { "Status": "Disabled" },
        "Destination": { "Bucket": "DEST-BUCKET-CRN" }
      }
    ]
  }' \
  --region us-south

バケット複製の取得

  • 操作: バケットのレプリケーション設定を取得する。
  • 使用法: ibmcloud cos bucket-replication-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-replication-get --bucket SOURCE-BUCKET-NAME

バケット複製の削除

  • 操作: バケットからレプリケーション設定を削除します。
  • 使用法: ibmcloud cos bucket-replication-delete --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-replication-delete --bucket SOURCE-BUCKET-NAME

バケットごとのレプリケーションの失敗を一覧表示する

  • アクション: バケットのレプリケーションの失敗を一覧表示します。
  • 使用法: ibmcloud cos bucket-replication-failures --bucket BUCKET_NAME [--starting-token TOKEN] [--encoding-type METHOD] [--first-sync-attempted-before TIMESTAMP] [--max-keys NUMBER] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :検索結果の次のページをどこから開始するかを指定するために使用されるTOKEN。
      • フラグ: --starting-token TOKEN
    • オプション :レスポンス内のオブジェクトキーをエンコードするよう要求し、使用するエンコード方式を指定します。
      • フラグ: --encoding-type METHOD
    • オプション :指定されたTIMESTAMP(ISO 8601形式)より前に最初の同期が試行された失敗のみを結果に含めるようにフィルタリングします。
      • フラグ: --first-sync-attempted-before TIMESTAMP
    • オプション :返すキーの最大数。
      • フラグ: --max-keys NUMBER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-replication-failures --bucket my-bucket

バケット内のレプリケーションに失敗したオブジェクトについて、レプリケーションを再試行する

  • アクション: バケット内のレプリケーションに失敗したオブジェクトについて、レプリケーションを再試行します。
  • 使用法: ibmcloud cos bucket-replication-reattempt --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-replication-reattempt --bucket my-bucket

バケットのバージョン管理

バケットのバージョン管理を有効化または一時停止するための設定。

バケットのバージョン管理構成を設定します

  • 操作: バケットのバージョン管理設定を行う。
  • 使用法: ibmcloud cos bucket-versioning-put --bucket BUCKET_NAME --versioning-configuration STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • バージョン管理の状態を指定するJSON構文を使用した構造体。 Status の有効な値は、 Enabled および Suspended です。

      • フラグ: --versioning-configuration STRUCTURE

        	{
        	  "Status": "Enabled"|"Suspended"
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-versioning-put --bucket my-bucket --versioning-configuration '{"Status": "Enabled"}'

バケットのバージョン管理構成を取得します

  • アクション: バケットのバージョン管理設定を取得する。
  • 使用法: ibmcloud cos bucket-versioning-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos bucket-versioning-get --bucket my-bucket

マルチパート・アップロードの完了

  • アクション: 現在アップロードされているパートをアセンブルし、そのファイルをユーザーの IBM Cloud Object Storage アカウント内のバケットにアップロードして、マルチパート・アップロード・インスタンスを完了します。
  • 使用法: ibmcloud cos multipart-upload-complete --bucket BUCKET_NAME --key KEY --upload-id ID --multipart-upload STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。

      • フラグ: --key KEY
    • マルチパート・アップロードを識別するアップロード ID。

      • フラグ: --upload-id ID
    • JSON構文を使用した構造。 file:// というプレフィックスを使用すると、 --multipart-upload file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --multipart-upload STRUCTURE

        	{
        		"Parts": [
        			{
        				"ETag": "string",
        				"PartNumber": integer
        			}
        		]
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

静的 Web サイトの構成

  • アクション: 静的 Web サイトをホストするようにバケットを構成します。
  • 使用法: ibmcloud cos bucket-website-put --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • JSON 構造の形式での Web サイト構成。 file:// 接頭部は、指定されたファイル ( --website-configuration file://<filename.json> など) から JSON 構造をロードするために使用されます。

      • フラグ: --website-configuration STRUCTURE

        	{
        		"ErrorDocument": {
        			"Key": "string"
        		},
        		"IndexDocument": {
        			"Suffix": "string"
        		},
        		"RoutingRules": [
        			{
        				"Condition": {
        					"HttpErrorCodeReturnedEquals": "string",
        					"KeyPrefixEquals": "string"
        				},
        				"Redirect": {
        					"HostName": "string",
        					"HttpRedirectCode": "string",
        					"Protocol": "http"|"https",
        					"ReplaceKeyPrefixWith": "string",
        					"ReplaceKeyWith": "string"
        				}
        			}
        		]
        	}
        

        あるいは、バケット Web サイトがトラフィックをリダイレクトするように構成されている場合は、構成されている唯一のパラメーターでなければなりません。

        	{
        		"RedirectAllRequestsTo": {
        			"HostName": "string",
        			"Protocol": "http"|"https"
        		}
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

プログラムの構成

  • アクション: プログラムの設定を構成します。
  • 使用法: ibmcloud cos config [COMMAND]
  • コマンド:
    • HMAC と IAM の認証の間で切り替えます。
      • コマンド: auth
    • CRN を構成に保管します。
      • コマンド: crn
    • デフォルトのダウンロード場所を構成に保管します。
      • コマンド: ddl
    • HMAC 資格情報を構成に保管します。
      • コマンド: hmac
    • 構成をリストします。
      • コマンド: list
    • デフォルト地域を構成に保管します。
      • コマンド: region
    • 「 VHost 」と「Path URL 」のスタイルを切り替える。
      • コマンド: url-style
    • デフォルトのサービス・エンドポイントを設定します。
      • コマンド: endpoint-url
        • --list は、現在のデフォルトのサービス・エンドポイントを表示します (設定されている場合)。 それ以外の場合は、空になります。
        • --url some.end.point.url は、サービス・エンドポイントを指定された値に変更します。
        • --clear は、設定されているデフォルトの Service Endpoint を削除します。 URL

バケットからのオブジェクトのコピー

( --metadata フィーチャーを使用して) コピー中にメタデータをオブジェクトに追加する場合は、属性 --metadata-directive REPLACE を追加する必要があります。これは、操作中にデフォルトでメタデータがコピーされるためです (暗黙的な --metadata-directive COPY)。

  • アクション: オブジェクトをソース・バケットから宛先バケットにコピーします。
  • 使用法: ibmcloud cos object-copy --bucket BUCKET_NAME --key KEY --copy-source SOURCE [--cache-control CACHING_DIRECTIVES] [--content-disposition DIRECTIVES] [--content-encoding CONTENT_ENCODING] [--content-language LANGUAGE] [--content-type MIME] [--copy-source-if-match ETAG] [--copy-source-if-modified-since TIMESTAMP] [--copy-source-if-none-match ETAG] [--copy-source-if-unmodified-since TIMESTAMP] [--metadata MAP] [--metadata-directive DIRECTIVE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • 宛先バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • (SOURCE) ソースバケット名とソースオブジェクトのキー名をスラッシュ (/) で区切ったもの。 URL-encoded 形式で指定する必要があります。
      • フラグ: --copy-source SOURCE
    • オプション :リクエストおよびレスポンスのチェーンに対して、 CACHING_DIRECTIVES を指定します。
      • フラグ: --cache-control CACHING_DIRECTIVES
    • オプション :表示情報を指定します(DIRECTIVES )。
      • フラグ: --content-disposition DIRECTIVES
    • オプション :オブジェクトにどのコンテンツエンコーディング(CONTENT_ENCODING)が適用されるかを指定し、それによって、Content-Typeヘッダーフィールドで参照されるメディアタイプを取得するために、どのようなデコード処理を適用する必要があるかを示します。
      • フラグ: --content-encoding CONTENT_ENCODING
    • 任意 :コンテンツの言語。
      • フラグ: --content-language LANGUAGE
    • オプション :オブジェクトデータの形式を表す標準のMIMEタイプ。
      • フラグ: --content-type MIME
    • オプション :オブジェクトのエンティティタグ(Etag )が指定されたタグ(ETAG )と一致する場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-match ETAG
    • オプション :指定された時刻(TIMESTAMP)以降に変更が加えられている場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-modified-since TIMESTAMP
    • オプション :オブジェクトのエンティティタグ(ETag )が、指定されたタグ(ETAG )と異なる場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-none-match ETAG
    • オプション :指定された時刻(TIMESTAMP)以降、オブジェクトに変更が加えられていない場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-unmodified-since TIMESTAMP
    • オプション :保存するメタデータのMAP。 file:// というプレフィックスを使用すると、ファイルからJSON構造を読み込むことができます。
      • フラグ: --metadata MAP
    • オプション :メタデータをソースオブジェクトからコピーするか、リクエストで指定されたメタデータに置き換えるかを指定します。 DIRECTIVE の値: COPY、REPLACE。
      • フラグ: --metadata-directive DIRECTIVE
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

--metadata MAP のメタデータ JSON 構造の例:

{
	"file_name": "file_20xxxxxxxxxxxx45.zip",
	"label": "texas",
	"state": "Texas",
	"Date_to": "2019-11-09T16:00:00.000Z",
	"Sha256sum": "9e39dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8ce6b68ede3a47",
	"Timestamp": "Thu, 17 Oct 2019 09:22:13 GMT"
}

新規バケットの作成

  • アクション: IBM Cloud Object Storage インスタンスにバケットを作成します。
  • 使用法: ibmcloud cos bucket-create --bucket BUCKET_NAME [--class CLASS_NAME][--class onerate_active] [--ibm-service-instance-id ID] [--region REGION] [--output FORMAT]
    • なお、IAM 認証を使用する場合は CRN を指定する必要があります。 これは、 ibmcloud cos config crn コマンドを使用して設定できます。
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • 任意 :クラスの名前。
      • フラグ: --class CLASS_NAME
    • ユーザーはバケットを作成するときに onerate_active を指定する必要があります。
      • フラグ: --class onerate_active
    • オプション :リクエスト内で IBM サービスインスタンスIDを設定します。
      • フラグ: --ibm-service-instance-id ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

新しいバケットを作成するKey Protect

  • アクション: IBM Cloud Object Storage インスタンス内で、 Key Protect を使用してバケットを作成します。
  • 使用法: ibmcloud cos bucket-create --bucket BUCKET_NAME [--ibm-service-instance-id ID] [--class CLASS_NAME] [--region REGION] --kms-root-key-crn CUSTOMERROOTKEYCRN --kms-encryption-algorithm ALGORITHM [--output FORMAT] [--json]
    • なお、IAM 認証を使用する場合は CRN を指定する必要があります。 これは、 ibmcloud cos config crn コマンドを使用して設定できます。
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • データ暗号化のためにバケットに関連付けるKMSルートキーのCUSTOMERROOTKEYCRN。
      • フラグ: --kms-root-key-crn CUSTOMERROOTKEYCRN
    • オプション :key protect を使用して保存された暗号化キーとともに使用する ALGORITHM および SIZE。
      • フラグ: --kms-encryption-algorithm ALGORITHM
    • 任意 :クラスの名前。
      • フラグ: --class CLASS_NAME
    • オプション :リクエスト内で IBM サービスインスタンスIDを設定します。
      • フラグ: --ibm-service-instance-id ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • (非推奨): 返される出力は生のJSON形式です。
      • フラグ: --json

次に例を示します。

ibmcloud cos bucket-create --bucket bucket-name --kms-root-key-crn crn:v1:staging:public:kms:us-south:a/9978e0xxxxxxxxxxxxxxxxxxxxxx8654:dfdxxxxx-xxxx-xxxx-xxxx-xxxxxxba6eb0:key:7cea005e-75d4-4a08-ad2f-5e56141f6a96 --kms-encryption-algorithm AES256

Hyper Protect Crypto Services を使用して新規バケットを作成します。

  • アクション: Hyper Protect Crypto Servicesを使用して新規バケットを作成してください。
  • 使用法: ibmcloud cos bucket-create --bucket BUCKET_NAME [--ibm-service-instance-id ID] [--class CLASS_NAME] [--region REGION] --kms-root-key-crn CUSTOMERROOTKEYCRN --kms-encryption-algorithm ALGORITHM [--output FORMAT] [--json]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • データ暗号化のためにバケットに関連付けるKMSルートキーのCUSTOMERROOTKEYCRN。
      • フラグ: --kms-root-key-crn CUSTOMERROOTKEYCRN
    • オプション :key protect を使用して保存された暗号化キーとともに使用する ALGORITHM および SIZE。
      • フラグ: --kms-encryption-algorithm ALGORITHM
    • 任意 :クラスの名前。
      • フラグ: --class CLASS_NAME
    • オプション :リクエスト内で IBM サービスインスタンスIDを設定します。
      • フラグ: --ibm-service-instance-id ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • (非推奨): 返される出力は生のJSON形式です。
      • フラグ: --json

次に例を示します。

ibmcloud cos bucket-create --bucket bucket-name --kms-root-key-crn crn:v1:bluemix:public:hs-crypto:us-south:a/ee747e4xxxxxxxxxxxxxxxxxxxxxx7559:ac6xxxxx-xxxx-xxxx-xxxx-xxxxxx1bea99:key:e7451f36-d7ea-4f55-bc1c-ce4bcceb7018

新規マルチパート・アップロードの作成

  • アクション: 新規マルチパート・アップロード・インスタンスを作成して、マルチパート・ファイル・アップロード・プロセスを開始します。
  • 使用法: ibmcloud cos multipart-upload-create --bucket BUCKET_NAME --key KEY [--cache-control CACHING_DIRECTIVES] [--content-disposition DIRECTIVES] [--content-encoding CONTENT_ENCODING] [--content-language LANGUAGE] [--content-type MIME] [--metadata MAP] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。

      • フラグ: --key KEY
    • オプション :リクエストおよびレスポンスのチェーンに対して、 CACHING_DIRECTIVES を指定します。

      • フラグ: --cache-control CACHING_DIRECTIVES
    • オプション :表示情報を指定します(DIRECTIVES )。

      • フラグ: --content-disposition DIRECTIVES
    • オプション :オブジェクトのコンテンツエンコーディング(CONTENT_ENCODING )を指定します。

      • フラグ: --content-encoding CONTENT_ENCODING
    • 任意 :コンテンツの言語。

      • フラグ: --content-language LANGUAGE
    • オプション :オブジェクトデータの形式を表す標準のMIMEタイプ。

      • フラグ: --content-type MIME
    • オプション :保存するメタデータのMAP。 file:// というプレフィックスを使用すると、ファイルからJSON構造を読み込むことができます。

      • フラグ: --metadata MAP

        	{
        		"file_name": "file_20xxxxxxxxxxxx45.zip",
        		"label": "texas",
        		"state": "Texas",
        		"Date_to": "2019-11-09T16:00:00.000Z",
        		"Sha256sum": "9e39dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8ce6b68ede3a47",
        		"Timestamp": "Thu, 17 Oct 2019 09:22:13 GMT"
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

静的 Web サイト構成の削除

  • アクション: バケットの静的 Web サイト構成を削除します。
  • 使用法: ibmcloud cos bucket-website-delete --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

既存のバケットの削除

  • アクション: IBM Cloud Object Storage インスタンス内の既存のバケットを削除します。
  • 使用法: ibmcloud cos bucket-delete --bucket BUCKET_NAME [--region REGION] [--force] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :この操作では確認のメッセージは表示されません。
      • フラグ: --force
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

オブジェクトの削除

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットから 1 つのオブジェクトを削除します。
  • 使用法: ibmcloud cos object-delete --bucket BUCKET_NAME --key KEY [--region REGION] [--force] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :この操作では確認のメッセージは表示されません。
      • フラグ: --force
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

バケット CORS の削除

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットの CORS 構成を削除します。
  • 使用法: ibmcloud cos bucket-cors-delete --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

複数のオブジェクトの削除

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットから複数のオブジェクトを削除します。
  • 使用法: ibmcloud cos objects-delete --bucket BUCKET_NAME --delete STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • JSON構文を使用した構造。 file:// というプレフィックスを使用すると、 --delete file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --delete STRUCTURE

        	{
        		"Objects": [
        			{
        				"Key": "string",
        				"VersionId": "string"
        			}
        		],
        		"Quiet": true|false
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

オブジェクトのダウンロード

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットから 1 つのオブジェクトをダウンロードします。
  • 使用法: ibmcloud cos object-get --bucket BUCKET_NAME --key KEY [--if-match ETAG] [--if-modified-since TIMESTAMP] [--if-none-match ETAG] [--if-unmodified-since TIMESTAMP] [--range RANGE] [--response-cache-control HEADER] [--response-content-disposition HEADER] [--response-content-encoding HEADER] [--response-content-language HEADER] [--response-content-type HEADER] [--response-expires HEADER] [--region REGION] [--output FORMAT] [OUTFILE]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と一致する場合にのみ、そのオブジェクトを返す。一致しない場合は、412(前提条件を満たさない)を返す。
      • フラグ: --if-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられている場合にのみオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-modified-since TIMESTAMP
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と異なる場合にのみそのオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-none-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられていない場合にのみオブジェクトを返し、そうでない場合は412(前提条件を満たさない)を返す。
      • フラグ: --if-unmodified-since TIMESTAMP
    • オプション :オブジェクトの指定された範囲のバイトをダウンロードします。
      • フラグ: --range RANGE
    • オプション :レスポンスの Cache-Control ヘッダーを設定します。
      • フラグ: --response-cache-control HEADER
    • オプション :レスポンスの Content-Disposition ヘッダーを設定します。
      • フラグ: --response-content-disposition HEADER
    • オプション :レスポンスの Content-Encoding ヘッダーを設定します。
      • フラグ: --response-content-encoding HEADER
    • オプション :レスポンスの Content-Language ヘッダーを設定します。
      • フラグ: --response-content-language HEADER
    • オプション :レスポンスの Content-Type ヘッダーを設定します。
      • フラグ: --response-content-type HEADER
    • オプション :レスポンスの「Expires」ヘッダーを設定します。
      • フラグ: --response-expires HEADER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • オプション :オブジェクトの内容を保存する場所。 このパラメーターが指定されていない場合、プログラムはデフォルトの場所を使用します。
      • パラメーター: OUTFILE

以下の方法を使用してオブジェクトをダウンロードします S3Manager

  • アクション: 並行して S3 からオブジェクトをダウンロードします。
  • 使用法: ibmcloud cos download --bucket BUCKET_NAME --key KEY [--concurrency value] [--part-size SIZE] [--if-match ETAG] [--if-modified-since TIMESTAMP] [--if-none-match ETAG] [--if-unmodified-since TIMESTAMP] [--range RANGE] [--response-cache-control HEADER] [--response-content-disposition HEADER] [--response-content-encoding HEADER] [--response-content-language HEADER] [--response-content-type HEADER] [--response-expires HEADER] [--region REGION] [--output FORMAT] [OUTFILE]
  • 指定するパラメーター:
    • バケットの名前 (BUCKET_NAME)。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :パーツを送信する際、ダウンロードの呼び出しごとに並列で起動するgoルーチンの数。 デフォルト値は 5 です。
      • フラグ: --concurrency value
    • オプション :データをチャンク単位でバッファリングし、 S3 への送信用パートとして区切る際に使用するバッファのサイズ(バイト単位)。 許可される最小パート・サイズは 5MB です。
      • フラグ: --part-size SIZE
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と一致する場合にのみ、そのオブジェクトを返す。一致しない場合は、412(前提条件を満たさない)を返す。
      • フラグ: --if-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられている場合にのみオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-modified-since TIMESTAMP
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と異なる場合にのみそのオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-none-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられていない場合にのみオブジェクトを返し、そうでない場合は412(前提条件を満たさない)を返す。
      • フラグ: --if-unmodified-since TIMESTAMP
    • オプション :オブジェクトの指定された範囲のバイトをダウンロードします。 HTTP のRangeヘッダーに関する詳細については、「 HTTP Rangeヘッダー仕様 」を参照してください。
      • フラグ: --range RANGE
    • オプション :レスポンスの Cache-Control ヘッダーを設定します。
      • フラグ: --response-cache-control HEADER
    • オプション :レスポンスの Content-Disposition ヘッダーを設定します。
      • フラグ: --response-content-disposition HEADER
    • オプション :レスポンスの Content-Encoding ヘッダーを設定します。
      • フラグ: --response-content-encoding HEADER
    • オプション :レスポンスの Content-Language ヘッダーを設定します。
      • フラグ: --response-content-language HEADER
    • オプション :レスポンスの Content-Type ヘッダーを設定します。
      • フラグ: --response-content-type HEADER
    • オプション :レスポンスの「Expires」ヘッダーを設定します。
      • フラグ: --response-expires HEADER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • オプション :オブジェクトの内容を保存する場所。 このパラメーターが指定されていない場合、プログラムはデフォルトの場所を使用します。
      • パラメーター: OUTFILE

Endpoints

  • アクション: リージョンごとの「 S3 」エンドポイントのURLを一覧表示します。
  • 使用法: ibmcloud cos endpoints [--region REGION] [--list-regions] [--output FORMAT]
  • 指定するパラメーター:
    • オプション :指定されたREGIONのエンドポイント「 URL 」を表示します。
      • フラグ: --region REGION
    • オプション :エンドポイントのURLの代わりに、利用可能なすべてのリージョンの一覧を表示します。
      • フラグ: --list-regions
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

例 — 特定の地域のエンドポイントを表示する:

ibmcloud cos endpoints --region us-south

例 — 利用可能なすべての地域を一覧表示する:

ibmcloud cos endpoints --list-regions

バケットの検出

  • アクション: IBM Cloud Object Storage インスタンス内のバケットの地域およびクラスを判別します。
  • 使用法: ibmcloud cos bucket-location-get --bucket BUCKET_NAME [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

バケットのクラスの取得

  • アクション: IBM Cloud Object Storage インスタンス内のバケットのクラスを判別します。
  • 使用法: ibmcloud cos bucket-class-get --bucket BUCKET_NAME [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

バケットのヘッダーの取得

  • アクション: IBM Cloud Object Storage インスタンス内にバケットが存在しているかどうかを判別します。
  • 使用法: ibmcloud cos bucket-head --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

静的 Web サイト構成の取得

  • アクション: バケットの静的 Web サイト構成を取得します。
  • 使用法: ibmcloud cos bucket-website-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

オブジェクトのヘッダーの取得

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットにファイルが存在しているかどうかを判別します。
  • 使用法: ibmcloud cos object-head --bucket BUCKET_NAME --key KEY [--if-match ETAG] [--if-modified-since TIMESTAMP] [--if-none-match ETAG] [--if-unmodified-since TIMESTAMP] [--range RANGE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と一致する場合にのみ、そのオブジェクトを返す。一致しない場合は、412(前提条件を満たさない)を返す。
      • フラグ: --if-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられている場合にのみオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-modified-since TIMESTAMP
    • オプション :オブジェクトのエンティティタグ(ETag )が指定された ETAG と異なる場合にのみそのオブジェクトを返し、そうでない場合は304(変更なし)を返す。
      • フラグ: --if-none-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられていない場合にのみオブジェクトを返し、そうでない場合は412(前提条件を満たさない)を返す。
      • フラグ: --if-unmodified-since TIMESTAMP
    • オプション :オブジェクトの指定された範囲のバイトをダウンロードします。
      • フラグ: --range RANGE
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

バケット CORS の取得

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットの CORS 構成を返します。
  • 使用法: ibmcloud cos bucket-cors-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

すべてのバケットのリスト表示

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のすべてのバケットのリストを出力します。 バケットは、異なる地域に存在している可能性があります。
  • 使用法: ibmcloud cos buckets [--ibm-service-instance-id ID] [--output FORMAT]
    • なお、IAM 認証を使用する場合は CRN を指定する必要があります。 これは、 ibmcloud cos config crn コマンドを使用して設定できます。
  • 指定するパラメーター:
    • 指定するパラメーターはありません。
    • オプション :リクエスト内で IBM サービスインスタンスIDを設定します。
      • フラグ: --ibm-service-instance-id
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

拡張バケット・リスト表示

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のすべてのバケットのリストを出力します。 バケットは、異なる地域に存在している可能性があります。
  • 使用法: ibmcloud cos buckets-extended [--ibm-service-instance-id ID] [--marker KEY] [--prefix PREFIX] [--page-size SIZE] [--max-items NUMBER] [--output FORMAT]
    • なお、IAM 認証を使用する場合は CRN を指定する必要があります。 これは、 ibmcloud cos config crn コマンドを使用して設定できます。
  • 指定するパラメーター:
    • 指定するパラメーターはありません。
    • オプション :リクエスト内で IBM サービスインスタンスIDを設定します。
      • フラグ: --ibm-service-instance-id
    • オプション :バケット内のオブジェクトを一覧表示する際に、最初から読み込むKEYを指定します。
      • フラグ: --marker KEY
    • オプション :指定された PREFIX で始まるキーに対してのみ応答を制限します。
      • フラグ: --prefix PREFIX
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページ・サイズをより小さく設定することで、各呼び出しで取得する項目が少なくなり、サービスに送られる呼び出し数が増えることになります。 これにより、サービス呼び出しのタイムアウトを防ぐことができます。
      • フラグ: --page-size SIZE
    • オプション :コマンドの出力に含める項目の総数。
      • フラグ: --max-items NUMBER
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

進行中のマルチパート・アップロードのリスト表示

  • アクション: 進行中のマルチパート・アップロードをリストします。
  • 使用法: ibmcloud cos multipart-uploads --bucket BUCKET_NAME [--delimiter DELIMITER] [--encoding-type METHOD] [--prefix PREFIX] [--key-marker value] [--upload-id-marker value] [--page-size SIZE] [--max-items NUMBER] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :DELIMITER とは、キーをグループ化するために使用する文字のことです。
      • フラグ: --delimiter DELIMITER
    • オプション :レスポンス内のオブジェクトキーをエンコードするよう要求し、使用するエンコード方式を指定します。
      • フラグ: --encoding-type METHOD
    • オプション :指定された PREFIX で始まるキーに対してのみ応答を制限します。
      • フラグ: --prefix PREFIX
    • オプション :このパラメータは、upload-id-marker と合わせて、どのマルチパートアップロードの後に一覧表示を開始するかを指定します。
      • フラグ: --key-marker value
    • オプション :key-marker と組み合わせて使用し、その時点以降のマルチパートアップロードについて、一覧表示を開始する位置を指定します。 key-marker が指定されていない場合、upload-id-marker パラメーターは無視されます。
      • フラグ: --upload-id-marker value
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページ・サイズをより小さく設定することで、各呼び出しで取得する項目が少なくなり、サービスに送られる呼び出し数が増えることになります。 これにより、サービス呼び出しがタイムアウトするのを防ぐことができます(デフォルト:1000)。
      • フラグ: --page-size SIZE
    • オプション :コマンドの出力に含める項目の総数。 対象項目の合計数が指定した値を超える場合、コマンドの出力に NextToken が提供されます。 ページネーションを再開するには、次のコマンドの starting-token 引数に「 NextToken 」という値を指定してください(デフォルト:0)。
      • フラグ: --max-items NUMBER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

オブジェクトのバージョンを一覧表示する

  • アクション: 特定のバケット内のすべてのオブジェクトのバージョンを一覧表示します。
  • 使用法: ibmcloud cos object-versions --bucket BUCKET_NAME [--delimiter DELIMITER] [--encoding-type METHOD] [--key-marker KEY] [--max-items NUMBER] [--prefix PREFIX] [--version-id-marker VERSION_ID] [--page-size SIZE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :DELIMITER(区切り文字)とは、キーをグループ化するために使用される文字のことです。
      • フラグ: --delimiter DELIMITER
    • オプション :レスポンス内のオブジェクトキーをエンコードするよう要求し、使用するエンコード方式を指定します。
      • フラグ: --encoding-type METHOD
    • オプション :バージョンの一覧表示を開始するKEYを指定します。 オブジェクトのバージョンは、指定されたキーの直後からアルファベット順に一覧表示されます。
      • フラグ: --key-marker KEY
    • オプション :コマンドの出力に含める項目の総数。 利用可能な項目の総数が指定された値を超える場合、出力には NextKeyMarker が返されます。 ページネーションを再開するには、後続のコマンドの --key-marker 引数に NextKeyMarker の値を指定してください。(デフォルト:0)
      • フラグ: --max-items NUMBER
    • オプション :指定された PREFIX で始まるキーに対してのみ応答を制限します。
      • フラグ: --prefix PREFIX
    • オプション :オブジェクトのバージョンの一覧表示を開始するバージョンIDを指定します。 ページネーションには、 --key-marker と組み合わせて使用します。
      • フラグ: --version-id-marker VERSION_ID
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページサイズを小さく設定すると、サービスへの呼び出し回数が増加します。(デフォルト:1000)
      • フラグ: --page-size SIZE
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-versions --bucket my-bucket --prefix logs/

オブジェクトのリスト表示

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットに存在するファイルをリストします。 この操作は現在、最近作成された 1000 個のオブジェクトに制限されており、フィルタリングできません。
  • 使用法: ibmcloud cos objects --bucket BUCKET_NAME [--delimiter DELIMITER] [--encoding-type METHOD] [--prefix PREFIX] [--starting-token TOKEN] [--page-size SIZE] [--max-items NUMBER] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :DELIMITER とは、キーをグループ化するために使用する文字のことです。
      • フラグ: --delimiter DELIMITER
    • オプション :レスポンス内のオブジェクトキーをエンコードするよう要求し、使用するエンコード方式を指定します。
      • フラグ: --encoding-type METHOD
    • オプション :指定された PREFIX で始まるキーに対してのみ応答を制限します。
      • フラグ: --prefix PREFIX
    • オプション :ページネーションの開始位置を指定するための TOKEN。 これは以前に切り捨てられた応答からの NextToken です。
      • フラグ: --starting-token TOKEN
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページ・サイズをより小さく設定することで、各呼び出しで取得する項目が少なくなり、サービスに送られる呼び出し数が増えることになります。 これにより、サービス呼び出しがタイムアウトするのを防ぐことができます。(デフォルト:1000)
      • フラグ: --page-size SIZE
    • オプション :コマンドの出力に含める項目の総数。 対象項目の合計数が指定した値を超える場合、コマンドの出力に NextToken が提供されます。 ページネーションを再開するには、次のコマンドの starting-token 引数に「 NextToken 」という値を指定してください。(デフォルト:0)
      • フラグ: --max-items NUMBER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

オブジェクトのリスト v2

  • 操作: 特定のバケット内のすべてのオブジェクトを一覧表示する。
  • 使用法: ibmcloud cos list-objects-v2 --bucket BUCKET_NAME [--starting-token Starting Token] [--delimiter DELIMITER] [--encoding-type METHOD] [--fetch-owner Boolean] [--max-items NUMBER] [--prefix PREFIX] [--start-after Start After] [--page-size SIZE] [--region REGION] [--output FORMAT] [--json]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :DELIMITER とは、キーをグループ化するために使用する文字のことです。
      • フラグ: --delimiter DELIMITER
    • オプション :レスポンス内のオブジェクトキーをエンコードするよう要求し、使用するエンコード方式を指定します。
      • フラグ: --encoding-type METHOD
    • オプション :指定された PREFIX で始まるキーに対してのみ応答を制限します。
      • フラグ: --prefix PREFIX
    • オプション :ページネーションの開始位置を指定するための TOKEN。 これは以前に切り捨てられた応答からの NextToken です。
      • フラグ: --starting-token TOKEN
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページ・サイズをより小さく設定することで、各呼び出しで取得する項目が少なくなり、サービスに送られる呼び出し数が増えることになります。 これにより、サービス呼び出しがタイムアウトするのを防ぐことができます。(デフォルト:1000)
      • フラグ: --page-size SIZE
    • オプション :コマンドの出力に含める項目の総数。 対象項目の合計数が指定した値を超える場合、コマンドの出力に NextToken が提供されます。 ページネーションを再開するには、次のコマンドの starting-token 引数に「 NextToken 」という値を指定してください。(デフォルト:0)
      • フラグ: --max-items NUMBER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT
    • オプション :デフォルトでは、 listV2 にはこのブール値は含まれていません。結果の各キーとともに所有者フィールドも返したい場合は、fetch owner field を true に設定してください。
      • フラグ: --fetch-owner Boolean
    • オプション :「Start After」には、 S3 がリストの表示を開始する位置を指定します。 S3 は、この指定されたキーの後からリストを開始します。 StartAfter は、バケット内の任意のキーにすることができます。
      • フラグ: --start-after Start After
    • 非推奨 : 出力が生のJSON形式で返されました。
      • フラグ: --json

パートのリスト

  • アクション: 進行中のマルチパート・アップロード・インスタンスに関する情報を出力します。
  • 使用法: ibmcloud cos parts --bucket BUCKET_NAME --key KEY --upload-id ID --part-number-marker VALUE [--page-size SIZE] [--max-items NUMBER] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • マルチパート・アップロードを識別するアップロード ID。
      • フラグ: --upload-id ID
    • リスト表示を開始する前のパート番号値 (VALUE) (デフォルト: 1)
      • フラグ: --part-number-marker VALUE
    • オプション :サービス呼び出しで取得する各ページのサイズ。 これは、コマンドの出力として返される項目の数には影響しません。 ページ・サイズをより小さく設定することで、各呼び出しで取得する項目が少なくなり、サービスに送られる呼び出し数が増えることになります。 これにより、サービス呼び出しがタイムアウトするのを防ぐことができます。(デフォルト:1000)
      • フラグ: --page-size SIZE
    • オプション :コマンドの出力に含める項目の総数。 対象項目の合計数が指定した値を超える場合、コマンドの出力に NextToken が提供されます。 ページネーションを再開するには、次のコマンドの starting-token 引数に「 NextToken 」という値を指定してください。(デフォルト:0)
      • フラグ: --max-items NUMBER
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

マルチパート・アップロードの手動制御

IBM Cloud Object Storage CLI では、 AWS のマルチパートアップロード機能を利用して、ユーザーが大きなファイルを複数のパートに分けてアップロードすることができます。 新しいマルチパートアップロードを開始するには、 multipart-upload-create コマンドを実行します。これにより、新しいアップロードインスタンスのアップロードIDが返されます。 アップロード・プロセスを続行するには、後続の各コマンドのためにアップロード ID を保存する必要があります。 このコマンドでは、 MD5 ハッシュを生成する必要がある:

{object data} | openssl dgst -md5 -binary | openssl enc -base64

multipart-upload-complete コマンドを実行した後、アップロードするファイル・パートごとに part-upload を実行します。 複数ファイルのアップロードの場合、最後のファイルを除くすべてのファイルは、それぞれ5MB以上である必要があります。 ファイルを別々のパートに分割するには、端末ウィンドウで split を実行します。 例えば、デスクトップ上に TESTFILE という名前の 13 MB のファイルがあり、それぞれ 5 MB のファイル・パートに分割する場合は、split -b 3m ~/Desktop/TESTFILE part-file- を実行できます。 このコマンドは、3 つのファイル・パート (それぞれ 5 MB の 2 つのファイル・パートと、1 つの 3 MB のファイル・パート) を part-file-aa、part-file-ab、および part-file-ac という名前で生成します。

各ファイルのパーツがアップロードされるたびに、CLIはその ETag を出力します。 この ETag を、部品番号とともに、適切な形式のJSONファイルとして保存する必要があります。 以下のテンプレートを使用して、独自の ETag JSON データ・ファイルを作成してください。

{
  "Parts": [
    {
      "PartNumber": 1,
      "ETag": "The ETag of the first file part goes here."
    },
    {
      "PartNumber": 2,
      "ETag": "The ETag of the second file part goes here."
    }
  ]
}

必要に応じて、この JSON テンプレートにさらに項目を追加します。

マルチパートアップロードのステータスを確認するには、バケット名、キー、およびアップロードIDを指定して、いつでも part-list コマンドを実行できます。 これは、マルチパートアップロードのインスタンスに関する生の情報を出力します。 ファイルの各部分のアップロードが完了したら、必要なパラメータを指定して「 multipart-upload-complete 」コマンドを実行してください。 すべてが正常に行われた場合、ファイルが目的のバケットに正常にアップロードされたことを示す確認が返されます。

パーツをアップロードします

  • アクション: 既存のマルチパート・アップロード・インスタンスにファイルのパートをアップロードします。
  • 使用法: ibmcloud cos part-upload --bucket BUCKET_NAME --key KEY --upload-id ID --part-number NUMBER [--body FILE_PATH] [--region REGION] [--output FORMAT]
    • なお、アップロードした各ファイルパーツの番号と、各パーツの ETag (CLIによって表示されます)を、JSONファイルに保存する必要があります。 詳しくは、下記の『マルチパート・アップロード・ガイド』を参照してください。
  • 指定するパラメーター:
    • マルチパート・アップロードが実行されているバケット名。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • マルチパート・アップロードを識別するアップロード ID。
      • フラグ: --upload-id ID
    • アップロードしているパートのパート番号 (NUMBER)。 これは 1 から 10,000 までの範囲の正の整数です。(デフォルト:1)
      • フラグ: --part-number NUMBER
    • オプション :オブジェクトデータの保存場所(FILE_PATH )。
      • フラグ: --body FILE_PATH
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

パート・コピーのアップロード

  • アクション: 既存のオブジェクトからデータをコピーすることで、パートをアップロードします。
  • 使用法: ibmcloud cos part-upload-copy --bucket BUCKET_NAME --key KEY --upload-id ID --part-number NUMBER --copy-source SOURCE [--copy-source-if-match ETAG] [--copy-source-if-modified-since TIMESTAMP] [--copy-source-if-none-match ETAG] [--copy-source-if-unmodified-since TIMESTAMP] [--copy-source-range value] [--region REGION] [--output FORMAT]
    • なお、アップロードした各ファイルパーツの番号と、各パーツの ETag (CLIによって表示されます)を、JSONファイルに保存する必要があります。 詳しくは、『マルチパート・アップロード・ガイド』を参照してください。
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • マルチパート・アップロードを識別するアップロード ID。
      • フラグ: --upload-id ID
    • アップロードしているパートのパート番号 (NUMBER)。 これは 1 から 10,000 までの正整数です。
      • フラグ: --part-number PART_NUMBER
    • (SOURCE) ソースバケット名とソースオブジェクトのキー名をスラッシュ (/) で区切ったもの。 URL-encoded 形式で指定する必要があります。
      • フラグ: --copy-source SOURCE
    • オプション :オブジェクトのエンティティタグ(Etag )が指定されたタグ(ETAG )と一致する場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-match ETAG
    • オプション :指定された時刻(TIMESTAMP)以降に変更が加えられている場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-modified-since TIMESTAMP
    • オプション :オブジェクトのエンティティタグ(ETag )が、指定されたタグ(ETAG )と異なる場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-none-match ETAG
    • オプション :指定された時刻(TIMESTAMP)以降、オブジェクトに変更が加えられていない場合、そのオブジェクトをコピーします。
      • フラグ: --copy-source-if-unmodified-since TIMESTAMP
    • オプション :ソースオブジェクトからコピーするバイトの範囲。 範囲値は bytes=first-last の形式にする必要があります。ここで、first と last はコピー対象を示すゼロで開始するバイト・オフセットです。 例えば、bytes=0-9 は、ソースの最初の 10 バイトをコピーすることを意味します。 ソース・オブジェクトが 5 MB を超える場合のみ、範囲コピーを行うことができます。
      • フラグ: --copy-source-range value
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

オブジェクト・ロック構成

オブジェクト・ロック構成の書き込み

デフォルトでは、「日」と「年」を同時に指定することはできません。

  • 操作: バケットのオブジェクトロック設定を設定します。
  • 使用法: ibmcloud cos object-lock-configuration-put --bucket BUCKET_NAME [--object-lock-configuration STRUCTURE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • JSON構文を使用した構造。 IBM Cloud の資料 を参照してください。
      • フラグ: --object-lock-configuration STRUCTURE

        	{
        	"ObjectLockEnabled": "Enabled",
        	"Rule": {
        		"DefaultRetention": {
        		"Mode": "COMPLIANCE",
        		"Days": integer,
        		"Years": integer
        		}
        	}
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-lock-configuration-put --bucket bucket-name --object-lock-configuration '{ "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 30 }}}'

オブジェクト・ロック構成の取得

  • アクション: バケットのオブジェクトロック設定を取得する。
  • 使用法: ibmcloud cos object-lock-configuration-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-lock-configuration-get --bucket bucket-name --region us-south

応答の例:

{
	"ObjectLockEnabled": "Enabled",
	"Rule": {
		"DefaultRetention": {
			"Mode": "COMPLIANCE",
			"Days": integer,
			"Years": integer
		}
	}
}

オブジェクト保存

オブジェクト保存の書き込み

  • アクション: オブジェクトの保持期間を設定する。
  • 使用法: ibmcloud cos object-retention-put --bucket BUCKET_NAME --key KEY [--retention STRUCTURE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • JSON構文を使用した構造。 IBM Cloud の資料 を参照してください。
      • フラグ: --retention STRUCTURE

        	{
        	  "Mode": "COMPLIANCE",
        	  "RetainUntilDate": timestamp
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-retention-put --bucket bucket-name --key file-name.txt --retention '{ "Mode": "COMPLIANCE", "RetainUntilDate": "2024-02-02T00:00:00"}'

オブジェクト保存の取得

  • アクション: オブジェクトの保持情報を取得する。
  • 使用法: ibmcloud cos object-retention-get --bucket BUCKET_NAME --key KEY [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-retention-get --bucket bucket-name --key file-name.txt --region us-south

応答の例:

{
	"Retention": {
		"Mode": "COMPLIANCE",
		"RetainUntilDate": "2024-02-02T00:00:00.000Z"
	}
}

オブジェクトのタグ付け

オブジェクトのタグを管理するための設定。

オブジェクトにタグを設定します

  • 操作: オブジェクトにタグを設定する。
  • 使用法: ibmcloud cos object-tagging-put --bucket BUCKET_NAME --key KEY --tagging STRUCTURE [--version-id VERSION_ID] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。

      • フラグ: --key KEY
    • タグセットを含む、JSON構文を使用した構造体。 file:// というプレフィックスを使用すると、 --tagging file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --tagging STRUCTURE

        	{
        	  "TagSet": [
        	    {
        	      "Key": "string",
        	      "Value": "string"
        	    }
        	  ]
        	}
        
    • オプション :タグ付け対象のオブジェクトの VERSION_ID。 指定がない場合は、現在のバージョンにタグが付けられます。

      • フラグ: --version-id VERSION_ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-tagging-put --bucket my-bucket --key my-object.txt --tagging '{"TagSet": [{"Key": "env", "Value": "production"}]}'

オブジェクトのタグを取得します

  • アクション: オブジェクトのタグを取得する。
  • 使用法: ibmcloud cos object-tagging-get --bucket BUCKET_NAME --key KEY [--version-id VERSION_ID] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :タグを取得する特定のオブジェクトバージョンの VERSION_ID。
      • フラグ: --version-id VERSION_ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-tagging-get --bucket my-bucket --key my-object.txt

オブジェクトからタグを削除します

  • 操作: オブジェクトからタグを削除します。
  • 使用法: ibmcloud cos object-tagging-delete --bucket BUCKET_NAME --key KEY [--version-id VERSION_ID] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :タグを削除する対象となる特定のオブジェクトバージョンの VERSION_ID。
      • フラグ: --version-id VERSION_ID
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos object-tagging-delete --bucket my-bucket --key my-object.txt

パブリック・アクセス・ブロックの構成

バケットのパブリックアクセスブロックの設定を管理するための設定。

バケットに対するパブリック・アクセス・ブロック構成を設定します

  • アクション: バケットに対してパブリックアクセスブロックの設定を行う。
  • 使用法: ibmcloud cos public-access-block-put --bucket BUCKET_NAME --public-access-block-configuration STRUCTURE [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • JSON構文を使用した構造。 file:// というプレフィックスを使用すると、 --public-access-block-configuration file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --public-access-block-configuration STRUCTURE

        	{
        	  "BlockPublicAcls": true|false,
        	  "IgnorePublicAcls": true|false,
        	  "BlockPublicPolicy": true|false,
        	  "RestrictPublicBuckets": true|false
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos public-access-block-put --bucket my-bucket --public-access-block-configuration '{"BlockPublicAcls": true, "IgnorePublicAcls": true, "BlockPublicPolicy": true, "RestrictPublicBuckets": true}'

バケットでのパブリック・アクセス・ブロック構成を取得します。

  • アクション: バケットのパブリックアクセスブロックの設定を取得する。
  • 使用法: ibmcloud cos public-access-block-get --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos public-access-block-get --bucket my-bucket

バケットからパブリック・アクセス・ブロック構成を削除します

  • 操作: バケットからパブリックアクセスブロックの設定を削除します。
  • 使用法: ibmcloud cos public-access-block-delete --bucket BUCKET_NAME [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。
      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。
      • フラグ: --output FORMAT

次に例を示します。

ibmcloud cos public-access-block-delete --bucket my-bucket

オブジェクトの配置

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットにオブジェクトをアップロードします。
  • 使用法: ibmcloud cos object-put --bucket BUCKET_NAME --key KEY [--body FILE_PATH] [--cache-control CACHING_DIRECTIVES] [--content-disposition DIRECTIVES] [--content-encoding CONTENT_ENCODING] [--content-language LANGUAGE] [--content-length SIZE] [--content-md5 MD5] [--content-type MIME] [--metadata MAP] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。

      • フラグ: --key KEY
    • オプション :オブジェクトデータの保存場所(FILE_PATH )。

      • フラグ: --body FILE_PATH
    • オプション :リクエストおよびレスポンスのチェーンに対して、 CACHING_DIRECTIVES を指定します。

      • フラグ: --cache-control CACHING_DIRECTIVES
    • オプション :表示情報を指定します(DIRECTIVES )。

      • フラグ: --content-disposition DIRECTIVES
    • オプション :オブジェクトのコンテンツエンコーディング(CONTENT_ENCODING )を指定します。

      • フラグ: --content-encoding CONTENT_ENCODING
    • 任意 :コンテンツの言語。

      • フラグ: --content-language LANGUAGE
    • オプション :本文のサイズ(バイト単位)。 このパラメータは、ボディのサイズを自動的に判別できない場合に役立ちます。(デフォルト:0)

      • フラグ: --content-length SIZE
    • オプション :データの base64-encoded 128ビット MD5 ダイジェスト。

      • フラグ: --content-md5 MD5
    • オプション :オブジェクトデータの形式を表す標準のMIMEタイプ。

      • フラグ: --content-type MIME
    • オプション :保存するメタデータのMAP。 file:// というプレフィックスを使用すると、ファイルからJSON構造を読み込むことができます。

      • フラグ: --metadata MAP

        	{
        		"file_name": "file_20xxxxxxxxxxxx45.zip",
        		"label": "texas",
        		"state": "Texas",
        		"Date_to": "2019-11-09T16:00:00.000Z",
        		"Sha256sum": "9e39dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8ce6b68ede3a47",
        		"Timestamp": "Thu, 17 Oct 2019 09:22:13 GMT"
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

以下の方法を使用してオブジェクトをアップロードします S3Manager

  • アクション: オブジェクトを COS に同時にアップロードします。
  • 使用法: ibmcloud cos upload --bucket BUCKET_NAME --key KEY --file PATH [--concurrency value] [--max-upload-parts PARTS] [--part-size SIZE] [--leave-parts-on-errors] [--cache-control CACHING_DIRECTIVES] [--content-disposition DIRECTIVES] [--content-encoding CONTENT_ENCODING] [--content-language LANGUAGE] [--content-length SIZE] [--content-md5 MD5] [--content-type MIME] [--metadata MAP] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前 (BUCKET_NAME)。

      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。

      • フラグ: --key KEY
    • アップロードするファイルのパス (PATH)。

      • フラグ: --file PATH
    • オプション :パーツを送信する際、Upload の呼び出しごとに並列で起動する go ルーチンの数。 デフォルト値は 5 です。

      • フラグ: --concurrency value
    • オプション : S3 にアップロードされるパーツの最大数。このサイトでは、アップロードするオブジェクトのパーツサイズを計算します。 制限は 10,000 パートです。

      • フラグ: --max-upload-parts PARTS
    • オプション :データをチャンク単位でバッファリングし、 S3 への送信用パートとして区切る際に使用するバッファのサイズ(バイト単位)。 許可される最小パート・サイズは 5MB です。

      • フラグ: --part-size SIZE
    • オプション :この値を「true」に設定すると、SDKはエラー発生時に AbortMultipartUpload を呼び出さなくなり、正常にアップロードされたすべてのパーツは S3 に残されるため、手動で復元できるようになります。

      • フラグ: --leave-parts-on-errors
    • オプション :リクエスト/レスポンスチェーンに対する CACHING_DIRECTIVES を指定します。

      • フラグ: --cache-control CACHING_DIRECTIVES
    • オプション :表示に関する情報(DIRECTIVES)を指定します。

      • フラグ: --content-disposition DIRECTIVES
    • オプション :オブジェクトにどのコンテンツエンコーディング(CONTENT_ENCODING)が適用されているかを指定し、それによって、Content-Typeヘッダーフィールドで参照されるメディアタイプを取得するために、どのようなデコード処理を適用する必要があるかを示します。

      • フラグ: --content-encoding CONTENT_ENCODING
    • 任意 :コンテンツの言語。

      • フラグ: --content-language LANGUAGE
    • オプション :本文のサイズ(バイト単位)。 このパラメーターは、本文のサイズを自動的に判定できない場合に役立ちます。

      • フラグ: --content-length SIZE
    • オプション :データの base64-encoded 128ビット MD5 ダイジェスト。

      • フラグ: --content-md5 MD5
    • オプション :オブジェクトデータの形式を表す標準のMIMEタイプ。

      • フラグ: --content-type MIME
    • オプション :保存するメタデータのMAP。 file:// というプレフィックスを使用すると、ファイルからJSON構造を読み込むことができます。

      • フラグ: --metadata MAP

        	{
        		"file_name": "file_20xxxxxxxxxxxx45.zip",
        		"label": "texas",
        		"state": "Texas",
        		"Date_to": "2019-11-09T16:00:00.000Z",
        		"Sha256sum": "9e39dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8ce6b68ede3a47",
        		"Timestamp": "Thu, 17 Oct 2019 09:22:13 GMT"
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

バケット CORS の設定

  • アクション: ユーザーの IBM Cloud Object Storage アカウント内のバケットの CORS 構成を設定します。
  • 使用法: ibmcloud cos bucket-cors-put --bucket BUCKET_NAME [--cors-configuration STRUCTURE] [--region REGION] [--output FORMAT]
  • 指定するパラメーター:
    • バケットの名前。

      • フラグ: --bucket BUCKET_NAME
    • オプション :JSON構文を使用したSTRUCTURE。 file:// というプレフィックスを使用すると、 --cors-configuration file://<filename.json> のようなファイルからJSON構造を読み込むことができます。

      • フラグ: --cors-configuration STRUCTURE

        	{
        		"CORSRules": [
        			{
        				"AllowedHeaders": ["*"],
        				"AllowedMethods": ["PUT", "GET", "DELETE"],
        				"AllowedOrigins": ["http://www.example.com"],
        				"ExposeHeaders": ["ExposeHeader7","ExposeHeader8"],
        				"MaxAgeSeconds": 75
        			}
        		]
        	}
        
    • オプション :バケットが存在するREGION。 このフラグを設定しなかった場合、プログラムは構成に指定されたデフォルト・オプションを使用します。

      • フラグ: --region REGION
    • オプション :出力形式は、json または text のいずれかのみです。

      • フラグ: --output FORMAT

バージョン

  • 操作: IBM Cloud Object Storage CLIプラグインのバージョンを表示します。
  • 使用法: ibmcloud cos version
  • 指定が必要なパラメータ: なし。

次に例を示します。

ibmcloud cos version

待機

  • アクション: 特定の条件が満たされるまで、APIに対してポーリングを行う。 各サブコマンドは5秒ごとにポーリングを行い、チェックが20回失敗するとリターンコード255で終了します。
  • 使用法: ibmcloud cos wait SUBCOMMAND

以下のサブコマンドが利用可能です:

バケットが存在する

  • 対処法: head-bucket を使用してポーリングを行う際、200 のレスポンスが返ってくるまで待機してください。
  • 使用法: ibmcloud cos wait bucket-exists --bucket BUCKET_NAME [--region REGION]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。
      • フラグ: --region REGION

次に例を示します。

ibmcloud cos wait bucket-exists --bucket my-bucket

バケットが存在しない

  • 処理: head-bucket を使用してポーリングを行い、404レスポンスが返ってくるまで待機します。
  • 使用法: ibmcloud cos wait bucket-not-exists --bucket BUCKET_NAME [--region REGION]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オプション :バケットが存在するREGION。
      • フラグ: --region REGION

次に例を示します。

ibmcloud cos wait bucket-not-exists --bucket my-bucket

オブジェクトが存在するか

  • 対処法: head-object を使用してポーリングを行う際、200 のレスポンスが返ってくるまで待機してください。
  • 使用法: ibmcloud cos wait object-exists --bucket BUCKET_NAME --key KEY [--if-match ETAG] [--if-modified-since TIMESTAMP] [--if-none-match ETAG] [--if-unmodified-since TIMESTAMP] [--range RANGE] [--part-number NUMBER] [--region REGION]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :オブジェクトのエンティティタグ(ETag)が指定されたETAGと一致する場合にのみ、そのオブジェクトを返す。
      • フラグ: --if-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられた場合のみ、そのオブジェクトを返します。
      • フラグ: --if-modified-since TIMESTAMP
    • オプション :オブジェクトの ETag が指定された ETAG と一致しない場合にのみ、そのオブジェクトを返す。
      • フラグ: --if-none-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられていない場合のみ、そのオブジェクトを返す。
      • フラグ: --if-unmodified-since TIMESTAMP
    • オプション :オブジェクトの指定されたバイト範囲をダウンロードします。
      • フラグ: --range RANGE
    • オプション :読み込まれるオブジェクトの部品番号。
      • フラグ: --part-number NUMBER
    • オプション :バケットが存在するREGION。
      • フラグ: --region REGION

次に例を示します。

ibmcloud cos wait object-exists --bucket my-bucket --key my-object.txt

オブジェクトが存在しない

  • 処理: head-object を使用してポーリングを行い、404レスポンスが返ってくるまで待機します。
  • 使用法: ibmcloud cos wait object-not-exists --bucket BUCKET_NAME --key KEY [--if-match ETAG] [--if-modified-since TIMESTAMP] [--if-none-match ETAG] [--if-unmodified-since TIMESTAMP] [--range RANGE] [--part-number NUMBER] [--region REGION]
  • 指定するパラメーター:
    • バケットの名前。
      • フラグ: --bucket BUCKET_NAME
    • オブジェクトのキー。
      • フラグ: --key KEY
    • オプション :オブジェクトのエンティティタグ(ETag)が指定されたETAGと一致する場合にのみ、そのオブジェクトを返す。
      • フラグ: --if-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられた場合のみ、そのオブジェクトを返します。
      • フラグ: --if-modified-since TIMESTAMP
    • オプション :オブジェクトの ETag が指定された ETAG と一致しない場合にのみ、そのオブジェクトを返す。
      • フラグ: --if-none-match ETAG
    • オプション :指定されたTIMESTAMP以降に変更が加えられていない場合のみ、そのオブジェクトを返す。
      • フラグ: --if-unmodified-since TIMESTAMP
    • オプション :オブジェクトの指定されたバイト範囲をダウンロードします。
      • フラグ: --range RANGE
    • オプション :読み込まれるオブジェクトの部品番号。
      • フラグ: --part-number NUMBER
    • オプション :バケットが存在するREGION。
      • フラグ: --region REGION

次に例を示します。

ibmcloud cos wait object-not-exists --bucket my-bucket --key my-object.txt

次のステップ

すべてのプロシージャーは常に計画どおりに実行されるため、 共通ヘッダーおよびエラー・コード は表示されていない可能性があります。 詳しくは、 API リファレンス を参照してください。