ハンズオン(簡易版): AWS CLI基礎 (入力)

1.9.2. S3オブジェクトのタグ情報の設定 (test-alfa.jpg)

手順の目的

S3バケット"scenario-awscli-input-<AWSアカウントID>"のオブジェクト"test-alfa.jpg"にタグ情報を設定します。

設定値の指定

設定値の指定

手順に必要な設定値を変数に格納をします。

1. S3バケット名

S3バケット名を指定します。

変数の設定:

S3_BUCKET_PREFIX='scenario-awscli-input'

コマンド:

aws_account_id=$( \
  aws sts get-caller-identity \
    --query 'Account' \
    --output text \
) \
  && echo ${aws_account_id}

結果(例):

<AWSアカウントID>

変数の設定:

S3_BUCKET_NAME="${S3_BUCKET_PREFIX}-${aws_account_id}" \
  && echo ${S3_BUCKET_NAME}

結果(例):

scenario-awscli-input-<AWSアカウントID>

2. S3オブジェクトキー

S3オブジェクトのキーを指定します。

変数の設定:

S3_OBJECT_KEY='test-alfa.jpg'

3. S3バケットのタグ情報設定文字列

S3バケットのタグ情報設定文字列を指定します。

変数の設定:

STRING_S3_OBJECT_TAGGING='TagSet=[{Key=class,Value=alfa},{Key=owner,Value=Alice}]'

設定値の確認

各変数に正しい設定値が格納されていることを確認します。

変数の確認:

cat << END

  # 1. S3_BUCKET_NAME:"scenario-awscli-input-<AWSアカウントID>"
       S3_BUCKET_NAME="${S3_BUCKET_NAME}"
  # 2. S3_OBJECT_KEY:"test-alfa.jpg"
       S3_OBJECT_KEY="${S3_OBJECT_KEY}"
  # 3. STRING_S3_OBJECT_TAGGING:"TagSet=[{Key=class,Value=alfa},{Key=owner,Value=Alice}]"
       STRING_S3_OBJECT_TAGGING="${STRING_S3_OBJECT_TAGGING}"

END

各変数について、上の行と下の行の値の内容もしくは形式が同じであることを確認します。 もし異なる場合は、それぞれの手順番号に戻って変数の設定を行います。

処理の実行

S3オブジェクトのタグ情報を更新します。

変数の確認:

cat << END

  # S3_BUCKET_NAME:"scenario-awscli-input-<AWSアカウントID>"
    S3_BUCKET_NAME="${S3_BUCKET_NAME}"
  # S3_OBJECT_KEY:"test-alfa.jpg"
    S3_OBJECT_KEY="${S3_OBJECT_KEY}"
  # STRING_S3_OBJECT_TAGGING:"TagSet=[{Key=class,Value=alfa},{Key=owner,Value=Alice}]"
    STRING_S3_OBJECT_TAGGING="${STRING_S3_OBJECT_TAGGING}"

END

コマンド:

aws s3api put-object-tagging \
  --bucket ${S3_BUCKET_NAME} \
  --key ${S3_OBJECT_KEY} \
  --tagging "${STRING_S3_OBJECT_TAGGING}"

結果(例):

(出力なし)

完了確認

「S3オブジェクト"test-alfa.jpg"にタグ情報が存在する。」ことを確認します。

コマンド:

aws s3api get-object-tagging  \
  --bucket ${S3_BUCKET_NAME} \
  --key ${S3_OBJECT_KEY}

結果(例):

{
    "TagSet": [
        {
            "Key": "owner",
            "Value": "Alice"
        },
        {
            "Key": "class",
            "Value": "alfa"
        }
    ]
}

手順の完了

(参考) マネジメントコンソールの確認

  • 左ペインの"バケット"をクリックします。

バケット一覧(画面)

  • 検索欄にバケット名"scenario-awscli-input-<AWSアカウントID>"を入力します。

  • バケット名"scenario-awscli-input-<AWSアカウントID>"(リンク)をクリックします。

バケット詳細画面

  • "オブジェクト"タブを表示します。

オブジェクト(タブ)

  • 検索欄にオブジェクトキー"test-alfa.jpg"を入力して、エンターキーを押します。

  • オブジェクト"test-alfa.jpg"(リンク)をクリックします。

オブジェクト詳細画面

  • "プロパティ"タブを表示します。

プロパティ(タブ)

  • "タグ"セクションにタグ情報が表示されていることを確認します。