# tS3Get

Amazon S3からファイルを取得します。

## tS3Getの標準プロパティ

これらのプロパティは、標準のジョブのフレームワークで実行されているtS3Getを設定するために使われます。

標準のtS3Getコンポーネントは、Cloudファミリーに属しています。

このフレームワーク内のコンポーネントは、すべてのTalend製品で利用できます。

## 基本設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [Property type] (プロパティタイプ) | [Built-in] (組み込み)と[Repository] (リポジトリー)のいずれかです。<br><br>[Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。<br><br>[Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。 |
| [Use an existing connection] (既存の接続を使用) | 定義済みの接続の詳細を再利用する場合は、このチェックボックスをオンにして、[Component List] (コンポーネントリスト)ドロップダウンリストから、目的の接続コンポーネントを選択します。 |
| [Credential Provider] (認証情報プロバイダー) | AWSのセキュリティ認証情報を取得する方法を指定します。<br><br><ul> <li><span>[Static credentials] (静的認証情報)</span>: <span>access key</span>と<span>secret key</span>をAWSセキュリティ認証情報として使用します。</li> <li><span>Inherit credentials from AWS role</span>: EMRインスタンスメタデータからAWSセキュリティ認証情報を取得します。このオプションを使用するには、Amazon EMRクラスターを開始する必要があり、このクラスターでジョブを実行する必要があります。詳細は、<a href="http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html" target="_blank">Using an IAM Role to Grant Permissions to Applications Running on Amazon EC2 Instances</a>をご覧ください。このオプションを使用すると、ジョブにAWSキーを配置せずにジョブを開発できるため、組織のセキュリティポリシーに簡単に準拠できます。</li> <li><span>[Web Identity Token] (ウェブIDトークン)</span>: Amazon S3接続を確立するためにWebトークンを使用します。</li> <li> <p><span>Profile credentials or inherit from AWS role</span>: ファイル(プロファイル設定ファイル)に保存されている認証情報をAWSセキュリティ認証情報として使うか、AWSロールからAWSセキュリティ認証情報を継承します。 </p> <p>AWSセキュリティ認証情報は、プロファイル設定ファイルで、プロファイルにグルーピングできます。プロファイル設定ファイルには、1つ以上のプロファイルを含めます。オプションで、<span>[Profile path] (プロファイルパス)</span>フィールドでプロファイル設定ファイルを、<span>[Profire name] (プロファイル名)</span>フィールドで使用されるプロファイルを指定できます。 </p> <p><span>[Profile path] (プロファイルパス)</span>フィールドと<span>[Profile name] (プロファイル名)</span>フィールドが空のままである場合は、 <span>&lt;user folder&gt;/.aws/credentials</span>プロファイル設定ファイルとして使われ、<span>default</span>という名前の付いたプロファイルが使われます。 </p> <p>EC2インスタンスの場合は、プロファイル(特定またはデフォルトのプロファイル)が存在しないと、コンポーネントがAWSロールからセキュリティ認証情報を継承することを試行します。 </p> </li> </ul><br><br>このオプションはダイナミックパラメーターとして動作するほか、コンテキスト変数を使って値を割り当てることもできます。<br><br>情報メモ注: tRedshiftBulkExec、 tRedshiftOutputBulk、tRedshiftOutputBulkExecは、[Static Credentials] (静的認証情報)または[Inherit credentials from AWS role] (AWSロールから認証情報を継承)である[Credential Provider] (認証情報プロバイダー)で確立されたS3接続のみをサポートします。 |
| [Assume role] (ロールを引き受け) | AWS IAMロールに関連付けられており、自分のユーザーアカウントに付与されていないアクセス権限を一時的に必要とする場合は、このチェックボックスをオンにすればそのロールを引き受けることができます。その後、次のパラメーターの値を指定して、新しく引き受けたロールセッションを作成します。<br><br>このロールに関連付けられている信頼ポリシーによって、自分のユーザーアカウントにそのロールへのアクセスが付与されていることをご確認ください。不明であれば、そのロールの所有者かAWS管理者にお問い合わせください。<br><br><ul> <li><p><span>ARN</span>: 引き受けるロールのARN (Amazonリソース名)。このARN名は、AWSポータルで使用するロールの<span>[Summary] (概要)</span>ページで見つかります。このロールARNの形式は、たとえば<kbd>am:aws:iam::[aws_account_number]:role/[role_name]</kbd>となります。 </p><span>[Role session name] (ロールセッション名)</span>: 引き受けたロールセッションの一意識別に使用する名前を入力します。この名前には英字(大文字と小文字の両方)と数字を利用できますが、スペースを含めることはできません。また、アンダースコア( _ )の他、= , . @ - も使用できます。 </li> <li> <p><span>[Session duration (minutes)] (セッション処理時間(分))</span>: 引き受けたロールセッションをアクティブにする期間(分)。この期間をAWS管理者が設定した最大期間より長くすることはできません。値を指定しない場合、持続時間は3600秒がデフォルトとなります。 </p> </li> </ul><br><br><br>IAMロールと関連するポリシータイプの例については、AWSドキュメンテーションで[\[Create and Manage AWS IAM Roles\] (AWS IAMロールの作成と管理)](https://aws.amazon.com/blogs/security/now-create-and-manage-aws-iam-roles-more-easily-with-the-updated-iam-console/)をご覧ください。 |
| [Region] (リージョン) | リージョン名を選択するか、二重引用符で囲んで(*"us-east-1"*など)、AWSリージョンを指定します。AWSリージョンの詳細の詳細は、[Regions and Endpoints](http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region)をご覧ください。 |
| [Client-side encryption] (クライアント側の暗号化) | このチェックボックスをオンにすると、[Key type] (キータイプ)ドロップダウンリストが表示されるので、Amazon S3への送信前にクライアント側でデータを暗号化するための3つのオプションのうちいずれか1つを選択します。詳細は、[Protecting Data Using Client-Side Encryption](http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html)をご覧ください。<br><br><ul> <li> <p> <span>[KMS-managed customer master key] (KMS管理顧客マスターキー)</span>: クライアント側のデータ暗号化にKMS管理顧客(CMK)マスターキーを使用します。<span>[Key] (キー)</span>フィールドには、AWS KMS顧客マスターキーID(CMK ID)を指定する必要があります。</p> </li> <li> <p> <span>[Symmetric Master Key] (対称マスターキー)</span>: クライアント側のデータ暗号化に対称マスターキー(256ビットAESシークレットキー)を使用します。</p> <ul> <li> <p> <span>[Algorithm] (アルゴリズム)</span>: キーに関連付けられたアルゴリズムをリストから選択します。デフォルトでは、<span>AES</span>というアルゴリズム以外はありません。</p> </li> <li> <p> <span>[Encoding] (エンコーディング)</span>: キーに関連付けられたエンコーディングのタイプ、<span>Base64</span>または<span>X509</span>のいずれかをリストから選択します。</p> </li> <li> <p> <span>[Key] (キー)</span>または<span>[Key file] (キーファイル)</span>: キーを保存するキーまたはファイルのパスを指定します。</p> </li> </ul> </li> <li> <p> <span>[Asymmetric Master Key] (非対称マスターキー)</span>: クライアント側のデータ暗号化に非対称マスターキー(1024ビットRSAキーペア)を使用します。</p> <ul> <li> <p> <span>[Algorithm] (アルゴリズム)</span>: キーに関連付けられたアルゴリズムをリストから選択します。デフォルトでは、<span>RSA</span>というアルゴリズム以外はありません。</p> </li> <li> <p> <span>[Public key file] (パブリックキーファイル)</span>: パブリックキーファイルのパスを指定します。</p> </li> <li> <p> <span>[Private key file] (プライベートキーファイル)</span>: プライベートキーファイルのパスを指定します。</p> </li> </ul> </li> </ul> |
| [Bucket] (バケット) | S3サーバーのソースバケットの名前(最上位フォルダー)を指定します。<br><br>Express One Zone(S3ディレクトリーバケット)を使用する場合は、AWSの要件に従い、&lt;bucketBaseName&gt;--&lt;availabilityZoneID&gt;--x-s3という形式で完全なバケット名を指定する必要があります。詳細については、[ディレクトリバケットの命名規則](https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html)を参照してください。<br><br>情報メモ注:<br><br><ul> <li>S3 Express One Zoneのサポートは、8.0.1-R2026-01 <span>Talend Studio</span>マンスリーアップデート、または<span>Talend</span>によって提供されるそれ以降のバージョンで利用可能です。</li> <li>ディレクトリーバケットには特定の権限が必要です。標準の認証情報および適切なIAM権限が必要となります。詳細については、<a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html" target="_blank">IAM を使用したリージョンエンドポイント API オペレーションの承認</a>を参照してください。</li> </ul> |
| Key | S3サーバーに保存するファイルへのパスを指定します。<br><br>情報メモ警告: このフィールドの先頭にスラッシュ(/)を使わないでください。 |
| [File] (ファイル) | ローカルに保存するファイルの名前を入力します。 |
| [Die on error] (エラー発生時に強制終了) | このチェックボックスはデフォルトでオフになっています。すなわち、エラーが発生した行をスキップし、エラーが発生していない行のプロセスを完了させます。 |

## 詳細設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |
| [Use a custom region endpoint] (カスタムリージョンのエンドポイントを使用) | カスタムエンドを使用する場合にこのチェックボックスをオンにし、使用するカスタムエンドポイントのURLを、表示されたフィールドに指定します。<br><br>このオプションはダイナミックパラメーターとして動作するほか、コンテキスト変数を使って値を割り当てることもできます。 |
| [Signing region] (サインインリージョン) | STSサービスのAWSリージョンを選択します。リストにリージョンがない場合は、リージョン名を二重引用付きで入力します。デフォルト値はus-east-1です。<br><br>このドロップダウンリストは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Specify STS endpoint] (STSエンドポイントを指定) | このチェックボックスをオンにして、表示されたフィールドで、セッション認証情報の取得先とするAWS Security Token Service(STS)のエンドポイントを指定します。たとえばsts.amazonaws.comと入力します。<br><br>このサービスを利用すれば、AWSユーザー認証のため、一時的かつ権限が限定された認証情報を要求できます。そのため、使用するAWSアカウントを認証する場合は引き続きアクセスキーとシークレットキーを入力する必要があります。<br><br>使用できる STSエンドポイントの一覧の詳細は、[\[AWS Security Token Service\] (AWSセキュリティトークンサービス)](https://docs.aws.amazon.com/general/latest/gr/rande.html#sts_region)をご覧ください。STS一時認証情報の詳細の詳細は、[\[Temporary Security Credentials\] (一時的なセキュリティ認証情報)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)をご覧ください。両方の記事はAWSドキュメントからのものです。<br><br>このチェックボックスは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [External ID] (外部ID) | ロールの持ち主であるアカウントの管理者から外部IDを提供されている場合は、その値をここに入力します。[External Id] (外部ID)は、一定数のユーザーがロールを引き受けられるようにする一意の識別子です。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Serial number] (シリアル番号) | ロールを引き受けた場合、そのロールの信頼ポリシーで多エレメント認証(MFA)が必要になることがあります。その際は、ロールを引き受けるユーザーに関連付けられているハードウェアや仮想MFAデバイスの識別番号を指定する必要があります。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Token code] (トークンコード) | ロールを引き受けた場合、そのロールの信頼ポリシーで多エレメント認証(MFA)が必要になることがあります。その際は、トークンコードを指定する必要があります。このトークンコードは、MFAデバイスによって生成される時間ベースのワンタイムパスワードです。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Tags] (タグ) | キー-値ペアという形式でセッションタグをリスト表示します。ポリシーでこれらのセッションタグを使えば、リクエストへのアクセスを許可したり拒否したりできます。<br><br>[Transitive] (推移的): このチェックボックスをオンにすると、タグがロールチェーンの次のロールまで存続することが示されます。<br><br>タグの詳細は、 [AWS STSでのセッションタグの受け渡し](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_role-chaining)をご覧ください。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [IAM policy ARNs] (IAMポリシーARN) | マネージドセッションポリシーとして使うIAMマネージドポリシーのAmazon Resource Names(ARN)を入力します。マネージドセッションポリシーを使ってセッションの権限を制限します。このポリシーはロールと同じアカウントに存在することが必要です。結果として得られるセッションの権限は、そのロールのIDベースのポリシーとセッションポリシーの中間となります。<br><br>セッションポリシーの詳細は、[ポリシーとアクセス許可](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies.html)で該当するセクションをご覧ください。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Policy] (ポリシー) | セッションポリシーとして使うIAMポリシーをJSON形式で入力します。セッションポリシーを使ってセッションの権限を制限します。結果として得られるセッションの権限は、そのロールのIDベースのポリシーとセッションポリシーの中間となります。<br><br>セッションポリシーの詳細は、[ポリシーとアクセス許可](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies.html)で該当するセクションをご覧ください。<br><br>このフィールドは、[Assume role] (ロールを引き受け)チェックボックスが選択されている場合にのみ使用できます。 |
| [Config client] (クライアント設定) | このチェックボックスをオンにし、[+]ボタンをクリックして、クライアントパラメーターごとに必要な行を追加し、各パラメーターに次のフィールドの値を設定します。<br><br><ul> <li> <p> <span>[Client Parameter] (クライアントパラメーター)</span>: セルをクリックし、リストからクライアントパラメーターを選択します。 </p> </li> <li> <p> <span>[Value] (値)</span>: 選択したパラメーターの値を入力します。 </p> </li> </ul><br><br>このチェックボックスは、[Use an existing connection] (既存の接続を使用)チェックボックスがオフになっている場合にのみ使用できます。<br><br>詳細は、[AWSのドキュメンテーション](https://docs.aws.amazon.com/ja_jp/sdk-for-java/v1/developer-guide/section-client-configuration.html)をお読みください。 |
| [Enable accelerate mode] (加速モードを有効化) | このチェックボックスをオンにすると、クライアントとS3バケットの間の距離が長い場合でもファイルを高速、簡単また安全な転送できるようになります。選択する場合、事前にS3バケットでこの加速モードを有効にしておく必要があります。 |
| [Use Select] (選択の使用) | Amazon S3からファイルを取得する方法をカスタマイズするには、このチェックボックスをオンにします。<br><br><ul> <li> <span>[File Type] (ファイルタイプ)</span>: 取得するファイルのタイプ</li> <li> <span>[Query] (クエリー)</span>:ファイルの取得に使うクエリー。</li> <li> <span>[Compressed Type] (圧縮タイプ)</span>:圧縮するファイルの圧縮タイプ</li> <li> <span>[Header Type] (ヘッダータイプ)</span>と<span>[Field Separator] (フィールド区切り)</span>: ファイルの取得に使うヘッダータイプとフィールド区切り</li> </ul> |
| [S3 CSV Input Options] (S3 CSV入力オプション) | CSVファイルの入力設定を指定するには、このチェックボックスをオンにします。<br><br>このプロパティは、[Use SSL] (SSLを使用)チェックボックスが選択されている場合にのみ使用できます。 |
| [Configure Output] (出力の設定) | ファイル出力に使用する設定を構成するには、このチェックボックスをオンにします。<br><br>このプロパティは、[Use SSL] (SSLを使用)チェックボックスが選択されている場合にのみ使用できます。 |
| [JSON Record Delimiter] (JSONレコード区切り) | JSONレコードを区切るために使う区切りを設定するために使われます。<br><br>これらのプロパティは、Output TypeドロップダウンリストでJSONが選択されている場合のみ利用できます。 |
| [Add the InputStream in Global variables] (InputStreamをグローバル変数に追加) | このチェックボックスをオンにすると、InputStreamがグローバル変数に追加されて、ジョブ内の他のコンポーネントがこの入力データを使えるようになります。<br><br>このプロパティは、[Use SSL] (SSLを使用)チェックボックスが選択されている場合にのみ使用できます。 |

## [Global Variables] (グローバル変数)

| 変数 | 説明 |
| --- | --- |
| ERROR\_MESSAGE | エラー発生時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数は、[Die on error] (エラー発生時に強制終了)チェックボックスがオンになっている場合のみ機能します。 |
| Records InputStream | 処理される入力ストリーム。これはAfter変数で、文字列を返します。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントは、tS3Connectionなどの他のS3コンポーネントで使用できます。<br><br>現在は、標準ジョブでS3オブジェクトからデータを直接取得するコンポーネントがありません。標準ジョブを通じてS3オブジェクトからデータを取得するには、tS3Getコンポーネントを使い、S3オブジェクトをファイルとしてダウンロードし他後に、ファイル入力コンポーネントを使って、ファイルからデータを取得できます。関連情報については、[S3オブジェクトからデータを取得する](https://help.qlik.com/talend/ja-JP/components/8.0/amazon-s3/retrieving-data-from-an-s3-object.html)をご覧ください。 |
| [Dynamic settings] (ダイナミック設定) | [+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からデータベース接続をダイナミックに選択します。この機能は、データストラクチャーが同じでデータベースが異なるデータベーステーブルにアクセスする必要がある場合、特に、Talend Studioを介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。<br><br>ダイナミックパラメーターを定義すると、[Basic settings] (基本設定)ビューの[Component List] (コンポーネントリスト)ボックスは利用できなくなります。<br><br>ダイナミックパラメーターの定義法を示すユースケースについては、[コンテキストベースのダイナミック接続によってデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/defining-context-groups/reading-data-from-databases-through-context-based-dynamic-connections)と、[ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/context/reading-data-from-different-mysql-databases-using-dynamically-loaded-connection-parameters)をご覧ください。ダイナミック設定とコンテキスト変数の詳細は、[ダイナミックスキーマ](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/dynamic-schema)と[コンテキストグループを作成し、その中でコンテキスト変数を定義](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/creating-context-group-and-define-context-variables-in-it)をご覧ください。 |

**関連概念**

* [Amazon S3でファイルを交換](https://help.qlik.com/talend/ja-JP/components/8.0/amazon-s3/ts3put-ts3get-ts3connection-exchange-files-with-amazon-s3-standard-component-in-this)
* [Talend StudioのS3オブジェクトからデータを取得](https://help.qlik.com/talend/ja-JP/components/8.0/amazon-s3/ts3get-tfileinputdelimited-tlogrow-tlogrow-retrieving-data-from-s3-object-in-studio-standard-component-this)