---
title: Amazon S3 コネクタ構成ガイド
description: この記事では、Amazon S3 コネクタの構成方法について説明します。
url: https://docs.tealium.com/ja/server-side-connectors/amazon-s3-connector/
---
## バッチ制限

このコネクタは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* リクエストの最大数：100,000
* 最も古いリクエストからの最大時間：10分
* リクエストの最大サイズ：100 MB

## 構成

コネクタマーケットプレイスにアクセスし、新しいコネクタを追加します。コネクタを追加する一般的な手順については、[コネクタについて](https://docs.tealium.com/about-connectors/)を参照してください。

コネクタを追加した後、以下の構成を構成します：

* **認証タイプ**  
  * 認証タイプを選択します。利用可能なオプションは、**STS** と **アクセスキー** です。
    * **STS**：**Assume Role: ARN** および **Assume Role: Session Name** フィールドが必要です。
    * **アクセスキー**：**AWS アクセスキー** および AWS シークレットアクセスキー フィールドが必要です。
* **リージョン**  
  * （必須）リージョンを選択します。
* **STS - Assume Role: ARN**  
  * STS 認証に必要です。引き受ける役割の Amazon リソースネーム (ARN) を提供します。
  * 例：`arn:aws:iam:222222222222:role/myrole`。
  * 詳細については、[AWS Identity and Access Management: Switch to an IAM role (AWS API)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-api.html)を参照してください。
* **STS - Assume Role: Session Name**  
  * 役割を引き受けるセッションの名前。
  * 2文字から64文字の間である必要があります。
* **STS - Assume Role: External ID**  
  * 第三者の外部識別子を提供します。
  * 詳細については、[AWS Identity and Access Management: Access to AWS accounts owned by third parties](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)を参照してください。
* **アクセスキー - AWS アクセスキー**  
  * **アクセスキー** 認証に必要です。AWS アクセスキーを提供します。
* **アクセスキー - AWS シークレットアクセスキー**  
  * **アクセスキー** 認証に必要です。AWS シークレットアクセスキーを提供します。

### AWS S3 への接続を作成する

Tealium は、バケットのリストを表示し、イベントおよびオーディエンスデータを S3 オブジェクトにアップロードするために、AWS S3 インスタンスへの接続を必要とします。認証には2つのオプションがあります：

* アクセスキーとアクセスシークレットを提供します。
* STS（セキュリティトークンサービス）の資格情報を提供します。


<blockquote>
S3 オブジェクトが暗号化されている場合、IAM ユーザーと KMS キーポリシーに復号化許可を追加する必要があります。
</blockquote>


#### アクセスキーとシークレットの資格情報

AWS アクセスキーとシークレットを見つけるには：

1. AWS 管理コンソールにログインし、**IAM**（Identity and Access Management）サービスに移動します。
1. **ユーザー** をクリックし、次に **ユーザーを追加** をクリックします。
1. ユーザー名を入力します。例えば、`TealiumS3User`。
1. 作成したユーザーにポリシーを添付します。
    1. **権限** タブで **既存のポリシーを直接アタッチ** をクリックします。
    1. `AmazonS3FullAccess` ポリシーを検索してアタッチします。特定のバケットへのアクセスを制限する場合は、以下の例のようなポリシーを作成します。例では、`YOUR_BUCKET_NAME` は Tealium がイベントおよびオーディエンスデータを S3 オブジェクトにアップロードするために使用するバケットです：
    ```json
    {
      "Version": "2012-10-17",
      "Statement": [
          {
                "Effect": "Allow",
                "Action": [
                   "s3:ListBucket",
                    "s3:PutObject",
                    "s3:GetObject",
                    "s3:ListBucketMultipartUploads",
                    "s3:ListMultipartUploadParts"
                ],
                "Resource": [
                    "arn:aws:s3:::YOUR_BUCKET_NAME",
                    "arn:aws:s3:::YOUR_BUCKET_NAME/*"
                ]
            },
            // プライベートクラウドで実行している場合、復号化が必要な場合は次のセクションを追加します
            {
                "Effect": "Allow",
                "Action": [
                     "kms:Decrypt",
                     "kms:GenerateDataKey"
                ],
                 "Resource": "arn:aws:kms:YOUR_REGION:111879511226:key/YOUR_KEY_ID"
           }
        ]
    }
    ```
1. キーを作成します。
    1. **セキュリティ認証情報** タブに移動し、**アクセスキーを作成** をクリックします。
    1. **アクセスキー ID** と **シークレットアクセスキー** をコピーし、安全に保存します。
    1. プライベートクラウド環境を使用している場合は、キーポリシーに次のようなステートメントを追加します：
    ```
    {
        "Sid": "AllowDecryptFromIAMUser",
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::<<account-id>>:user/<<user-name>>"
        },
        "Action": [
            "kms:Decrypt",
            "kms:GenerateDataKey"
        ],
        "Resource": "*"
    }
    ```
#### STS認証情報

STS認証情報を見つけるには：

1. **AWS管理コンソール**にログインし、**IAM**（Identity and Access Management）サービスに移動します。
1. **ロール**をクリックし、**ロールの作成**をクリックします。
1. **信頼されたエンティティ**のタイプで、AWSアカウントを選択します。
1. **別のAWSアカウント**を選択し、TealiumアカウントIDを入力します：
    * プライベートクラウドの顧客の場合、IDは`111879511226`です。
    * その他の顧客の場合、IDは`757913464184`です。
1. （オプション）**外部IDが必要**のチェックボックスを選択し、使用する外部IDを指定します。外部IDは256文字までで、英数字（`A-Z`, `a-z`, `0-9`）やハイフン（`-`）、アンダースコア（`_`）、ピリオド（`.`）などの記号を含むことができます。
1. ロールに名前を付けます。ロール名はTealiumS3で始まる必要があります。例：`TealiumS3-test.`
1. ロールにポリシーをアタッチします。
    1. **権限**タブで、**既存のポリシーを直接アタッチ**をクリックします。
    1. `AmazonS3FullAccess`ポリシーを検索してアタッチし、フルアクセスを許可します。特定のバケットへのアクセスを制限する場合は、以下の例のようなポリシーを作成します。例では、`YOUR_BUCKET_NAME`はTealiumがS3オブジェクトにイベントデータとオーディエンスデータをアップロードするバケットです：
    ```json
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:ListBucket",
                    "s3:PutObject",
                    "s3:GetObject",
                    "s3:ListBucketMultipartUploads",
                    "s3:ListMultipartUploadParts"
                ],
                "Resource": [
                    "arn:aws:s3:::YOUR_BUCKET_NAME",
                    "arn:aws:s3:::YOUR_BUCKET_NAME/*"
                ]
            },
            // プライベートクラウドで実行していて復号が必要な場合は、以下のセクションを追加してください
            {
                "Effect": "Allow",
                "Principal": {
                "AWS": "arn:aws:iam::111879511226:user/YOUR_USER_NAME"
             },
                "Action": "s3:GetObject",
                "Resource": "arn:aws:s3:::YOUR_BUCKET_NAME/*"
            }
        ]
    }
    ```
1. 信頼ポリシーを作成します。
    1. **信頼関係**タブに移動し、**信頼関係の編集**をクリックします。
    1. 信頼ポリシーが作成したロールを使用する特定の外部IDを許可していることを確認し、プライベートクラウドの顧客の場合はIDが`111879511226`、その他の顧客の場合は`757913464184`であることを確認します。
    1. Tealiumへの接続のための`EXTERNAL_ID`値を構成します。IDは256文字までで、英数字（`A-Z`, `a-z`, `0-9`）やハイフン（`-`）、アンダースコア（`_`）、ピリオド（`.`）などの記号を含むことができます。
    ```json
        {
            "Version": "2012-10-17",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Principal": {
                        "AWS": "arn:aws:iam::757913464184:root"
                    },
                    "Action": "sts:AssumeRole",
                    "Condition": {
                        "StringEquals": {
                            "sts:ExternalId": "EXTERNAL_ID"
                        }
                    }
                }
            ]
        }
    ```

### バケットの作成

S3バケットはAWS S3内の保存コンテナで、データの保存と整理に使用されます。コネクタ構成ウィンドウで、構成ステップで**バケットの作成**をクリックすることで新しいバケットを作成できます。

1. コネクタ構成画面で**バケットの作成**をクリックします。
1. バケット名を入力します。
1. **作成**をクリックします。

## アクション

| アクション名 | AudienceStream | EventStream |
| --- | :---: | :---: |
| すべてのイベントデータを送信 | ✗ | ✓ |
| カスタムイベントデータを送信 | ✗ | ✓ |
| すべての訪問データを送信 | ✓ | ✗ |
| カスタム訪問データを送信 | ✓ | ✗ |
| ログイベントを送信 | ✗ | ✓ |
| すべてのログイベントを送信 | ✗ | ✓ |

アクションの名前を入力し、ドロップダウンメニューからアクションタイプを選択します。

次のセクションでは、各アクションのパラメータとオプションの構成方法について説明します。

### すべてのイベントデータを送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を提供します。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定します。 |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択します。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルが上書きされるのを防ぎます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしての区切り文字。</li><li>デフォルトは`Newline`です。</li><li>利用可能なオプションは`Newline`と`No Delimiter`です。</li></ul> |
| 属性名の印刷 | デフォルトでは、属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にします。属性名が更新されるとペイロード名も反映されることに注意してください。 |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するための有効期限（TTL）を構成します。`1`から`60`分の間で値を入力します。デフォルト値は`10`分です。 |

### カスタムイベントデータを送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を提供します。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定します。 |

#### メッセージデータ

| **パラメータ** | **説明** |
| --- | --- |
| イベント属性 | イベント属性とベンダーパラメータ間のカスタムマッピングを定義します。 |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択します。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルが上書きされるのを防ぎます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしての区切り文字。</li><li>デフォルトは`Newline`です。</li><li>利用可能なオプションは`Newline`と`No Delimiter`です。</li></ul> |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するための有効期限（TTL）を構成します。`1`から`60`分の間で値を入力します。デフォルト値は`10`分です。 |
| テンプレート変数 | <ul><li>**テンプレート**用のデータ入力としてテンプレート変数を提供します。使用例や詳細については、[connector-template-variables](https://docs.tealium.com/connector-template-variables/)を参照してください。</li><li>ドット表記でネストされたテンプレート変数に名前を付けます。例：`items.name.`</li><li>ネストされたテンプレート変数は通常、データレイヤーリスト属性から構築されます。</li></ul> |
| テンプレート | <ul><li>イベントパラメータで参照されるテンプレートを提供します。詳細については、[about-connector-templates](https://docs.tealium.com/about-connector-templates/)を参照してください。</li><li>テンプレートは、例えば`{{SomeTemplateName}}`のように、サポートされるフィールドに名前で注入されます。</li></ul>|

### すべての訪問データを送信
#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を入力してください。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定してください。 |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択してください。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルの上書きが防止されます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしてのデリミタ。</li><li>デフォルトは `Newline` です。</li><li>利用可能なオプションは `Newline` と `No Delimiter` です。</li></ul> |
| 属性名の印刷 | デフォルトでは属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にしてください。属性名が更新されるとペイロード名も更新されることに注意してください。 |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するための有効期限（TTL）を構成します。`1`から`60`分の間で値を入力してください。デフォルト値は`10`分です。 |
| すべての訪問イベントを含む | 現在の訪問データを訪問データに含めるために選択してください。 |

### カスタム訪問データの送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を入力してください。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定してください。 |

#### メッセージデータ

| **パラメータ** | **説明** |
| --- | --- |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択してください。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルの上書きが防止されます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしてのデリミタ。</li><li>デフォルトは `Newline` です。</li><li>利用可能なオプションは `Newline` と `No Delimiter` です。</li></ul> |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するための有効期限（TTL）を構成します。`1`から`60`分の間で値を入力してください。デフォルト値は`10`分です。 |
| テンプレート変数 | <ul><li>**テンプレート**用のデータ入力としてテンプレート変数を提供します。詳細と使用例については、[connector-template-variables](https://docs.tealium.com/connector-template-variables/)を参照してください。</li><li>ドット表記でネストされたテンプレート変数を名前付けします。例：`items.name.`</li><li>ネストされたテンプレート変数は通常、データレイヤーリスト属性から構築されます。</li></ul> |
| テンプレート | <ul><li>イベントパラメータで参照されるテンプレートを提供します。詳細については、[about-connector-templates](https://docs.tealium.com/about-connector-templates/)を参照してください。</li><li>テンプレートは、例えば `{{SomeTemplateName}}` のように、サポートされるフィールドに名前で注入されます。</li></ul>|

### ログイベントの送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を入力してください。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定してください。 |

#### メッセージデータ

| **パラメータ** | **説明** |
| --- | --- |
| イベント属性 | イベント属性とベンダーパラメータ間のカスタムマッピングを定義します。 |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択してください。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルの上書きが防止されます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしてのデリミタ。</li><li>デフォルトは `Newline` です。</li><li>利用可能なオプションは `Newline` と `No Delimiter` です。</li></ul> |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するための有効期限（TTL）を構成します。`1`から`60`分の間で値を入力してください。デフォルト値は`10`分です。 |
| テンプレート変数 | <ul><li>**テンプレート**用のデータ入力としてテンプレート変数を提供します。詳細と使用例については、[connector-template-variables](https://docs.tealium.com/connector-template-variables/)を参照してください。</li><li>ドット表記でネストされたテンプレート変数を名前付けします。例：`items.name.`</li><li>ネストされたテンプレート変数は通常、データレイヤーリスト属性から構築されます。</li></ul> |
| テンプレート | <ul><li>イベントパラメータで参照されるテンプレートを提供します。詳細については、[about-connector-templates](https://docs.tealium.com/about-connector-templates/)を参照してください。</li><li>テンプレートは、例えば `{{SomeTemplateName}}` のように、サポートされるフィールドに名前で注入されます。</li></ul>|

### ログイベント全体の送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バケット | Amazon S3バケットを選択するか、カスタム値を入力してください。 |
| ファイルパス | データを追加するS3オブジェクトのパスを指定してください。 |
| ファイルパスサフィックス | 現在のタイムスタンプなどの属性をファイルパスに動的に追加したい場合は、ここで選択してください。これにより、各イベントごとにユニークなファイルが作成され、既存のファイルの上書きが防止されます。複数のサフィックス値を入力する場合、それらはアンダースコアで区切られます。 |
| レコードサフィックス | <ul><li>各レコードの末尾に追加するサフィックスとしてのデリミタ。</li><li>デフォルトは `Newline` です。</li><li>利用可能なオプションは `Newline` と `No Delimiter` です。</li></ul> |