見出し画像

【第224回】 Amazon S3 ファイルを Marketing Cloud へ転送する方法

Salesforce Marketing Cloud は、SFTP とのファイル転送の他、Amazon S3、Google Cloud Storage、Microsoft Azure Blob Storage とのファイル転送に対応しています。これらの直接転送は、SFTP とのファイル転送に比べて、より高速な転送が可能です。

そこで今回は、Amazon S3 を例にファイル転送の方法を深掘りします


■ AWS の基本設定

まずは、AWS のアカウントを作成する必要があります。以下のサイトよりアカウントを作成してください。

Amazon S3 は、ストレージ、データ転送、リクエスト数による従量課金がされる料金体系になっていますが、1 年間の無料利用枠が与えられています

※ 1 年が経過すると 自動的に従量課金が開始 されますので、必要に応じてアカウントの解約などを行ってください。

Marketing Cloud で Amazon S3 にアクセスするには、以下の情報が必要となります。手順を経て、以下の情報を取得しましょう。

① アクセスキー
② シークレットアクセスキー
③ バケット名
④ バケット内のフォルダ名(オプション)

さて、無事にアカウントが作成されると Amazon S3 のコンソールホームにやってきます

まず、IAMIdentity and Access Management)ユーザーと呼ばれる「特定タスクを実行するアカウント内のユーザー」を作成します。ページ上部の検索窓に「IAM」と入力し、表示される結果より IAM を選択します。

すると、IAM ダッシュボードに遷移します。まだユーザー数が「0」であることが分かります。この数字の部分をクリックします。

続いて、「ユーザーの作成」ボタンをクリックします

IAM ユーザーの名前を決める画面になりますので、名前を入力して、次へをクリックします。

次の権限の画面では、一旦デフォルトのまま次へを押してください。権限は後ほど付与します。

最後はレビュー画面のため、そのまま「ユーザーの作成」をクリックします。

これで、IAM ユーザーが作成されました。続いて、アクセスキーとシークレットアクセスキーを作成します。表示されている IAM ユーザーのリンクをクリックしてください。

「アクセスキーを作成」のリンクをクリックします。

ユースケースの選択画面になりますので、「サードパーティーサービス」を選択して、「次へ」をクリックします。

続いて、説明タグを設定する画面になりますので、必要に応じて入力してください。こちらの入力は任意です。入力後、「アクセスキーを作成」のボタンをクリックします。

すると「アクセスキー」と「シークレットアクセスキー」が表示されます

この「アクセスキー」は、今後も IAM ユーザーのダッシュボードに表示されますが、「シークレットアクセスキー」に関しては、この時にしか表示されませんので、しっかりとメモしておいてください

これで、以下の 2 つが取得できました。

① アクセスキー
② シークレットアクセスキー

続いて、Amazon S3 の設定を行いましょう。


■ Amazon S3 の設定

Amazon S3 とは、Amazon Simple Storage Service の略で、Amazon が提供するストレージサービスのことです

それでは、まず Amazon S3 にアクセスしてみましょう。ページ上部の検索窓に「S3」と入力し、表示される結果より S3 を選択します。

開いた画面より、新規のバケットを作成します。バケットとは、データをアップロード、ダウンロード、保管したりするコンテナのようなものです

まずはバケットの名前を決めます。この命名のルールは多少厳しく、既存に存在するものは使用できないとか、大文字は使用できないとか、アンダースコア( _ )は使用できないとか一定のルールがあります

他の設定は基本デフォルトのままで問題ないですが、必要に応じて設定してください。「バケットを作成」のボタンをクリックします。

これによりバケットが作成されました。このバケット名は Marketing Cloud のセットアップで必要なのでメモしてください。

③ バケット名

今回は、バケットの中にフォルダも作成してみます。「フォルダの作成」ボタンをクリックしてください。

まず、フォルダ名を決めます。バケットとは命名ルールが異なりますので大文字なども使用できます。名前を決めたら、「フォルダを作成」をクリックします。

バケット内にフォルダが作成されました。このフォルダ名も Marketing Cloud のセットアップで必要なのでメモしてください。

④ バケット内のフォルダ名(オプション)

続いて、作成したフォルダに CSV ファイルをアップロードします。

「ファイルを追加」ボタンをクリックします。

CSV ファイルを参照し、「アップロード」ボタンをクリックします。

CSV ファイルがアップロードされました。成功です。

それでは、最後に IAM ユーザーに対して、Amazon S3 へのアクセス権の設定しましょう。

もし、Amazon S3 へのアクセス権が設定されていない場合は、Marketing Cloud の「ファイルの場所」の設定で Validate エラーが発生します

先ほど作成した IAM ユーザーを開きます。上部に「許可ポリシー」が設定できるようになっていますので、「許可を追加」を選択します

続いて、画面右側の「ポリシーを直接アタッチする」を選択し、S3 と検索して、「AmzonS3FullAccess」を選択します

「AmzonS3FullAccess」を選択し「許可を追加」ボタンをクリックします。

これにより、IAM ユーザーに Amazon S3 を使用するための権限が付与されました。

以上で Amazon S3 の設定が完了しました。それでは、最後に Marketing Cloud の設定を行います。


■ Marketing Cloud の設定

Marketing Cloud セットアップの「ファイルの場所」を開き、新規作成を行ってください。「ファイルの場所」の定義名を入力し、「場所の種別」で Amazon Simple Strorage Service を選択します

続いて、認証の種類は「Access Key」に設定します。そして、事前にメモしてあった「AWS バケット名」「AWS 相対パス」「Access Key ID」「Secret Access Key」等をそれぞれ入力したら、最後に「領域名」も入力します。すべて入力後に Validate を行います。これにより、接続が担保されます。成功とされたら、保存してください。

「AWS 相対パス」に関しては、バケット直下のフォルダの場合は「/」の表記は不要です。単純に、フォルダ名だけを入力してください。セカンダリーフォルダの場合は「File1/output」のように「/」で区切ってください。

上記の「ファイルの場所」の定義を編集する度に「Secret Access Key」の入力が必要になりますので、注意して下さい。

ファイルの場所が設定できましたので、実際に Amazon S3 のバケット内にある CSV ファイルをデータエクステンションにインポートしてみます。以下のような空のデータエクステンションを作成しました。

続いて、Automation Studio のインポートアクティビティの構成において「ファイルの場所」から先ほど作成した設定を選択します。そして、ファイルの命名パターンでは、Amazon S3 のバケット内に置かれている CSV ファイル名を記載します。

すべてのインポートアクティビティの設定が完了したら、一回実行します。

以下の通り、ファイルがインポートされたことが分かります。成功です。

以上となります。


いかがでしたでしょうか。

今回の手順を確認することで、最低限どのようなものが必要であるかが分かったかと思います。Google Cloud StorageMicrosoft Azure Blob Storage に関しても、後日、同様の記事を書いてみたいと思います。

ちなみに、Automation Studio の「トリガー」開始ソースを使用すると、ファイルが S3 バケットにドロップされたときに自動化を開始するメカニズムを構成できます。この実装については、Marketing Cloud スペシャリストのオスカー・マッコールさん(Oscar McCall)の記事で詳細に説明されていますので、そちらをご覧ください。このプロセスでは AWS Lambda を使用することに注意してください。

今回は以上です。


Click here for English version

次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら

いいなと思ったら応援しよう!