Fivetran のデータ処理時のセキュリティについて気になることをまとめてみた
はじめに
Fivetran は、データ統合を自動化することができる製品です。
コネクタを通してデータソースを指定し、指定の宛先(Destination)にデータをロードします。
ここではデータ処理時のセキュリティについて、まとめておきたく記事としました。
なお、特に断りのない場合 Fivetran の SaaS 版に関する内容です。
Fivetran でのデータ処理の場所
Fivetran の主な提供形態は SaaS ですので、この場合データ処理自体は Fivetran 管理のネットワークで行われます。つまり、一時的ではありますが、データは Fivetran 管理のネットワークに保持されます。
Fivetran では Destination の設定時にデータを処理する地理的な場所を選択することが可能です。データが Fivetran 側に送信されるものの、特定のロケーションに留めたい場合はここで適切な場所を選定します。また、このためには、処理の対象となる以下の各要素が同一の場所に存在する必要があります。
- ソースのサーバー
- Destination(宛先の DB/DWH)
- Fivetran の処理サーバー
- Destination の設定時に指定
Fivetran の処理サーバーのロケーション
下図は公式ドキュメントより引用した図です。
Fivetran data residency | Fivetran documentation
2024/4/12 時点で指定可能なロケーションは図の通りで、[GEOGRAPHY] 列記載のロケーションを Destination の設定時に指定可能です。
また、データ処理のロケーションの選択は、Fivetran のエディションに関係なく指定可能です。すでに作成済みの Destination のデータ処理ロケーションを変更する際の手順は以下に記載があります。
クラウドサービス プロバイダとリージョン
Fivetran では、エディションの違いによって同じロケーションの中でもデータ処理を行うサーバーをホストするクラウドサービス プロバイダとリージョンを選択できます。
下図は先の図の一部を抜き出したものですが、GCP、AWS、Azure のどのクラウドサービス上のサーバーで処理を行うか、さらにクラウドサービスの中でも、その GEOGRAPHY 内のどのリージョンで処理を行うか指定できます。
エディションごとに設定可能な範囲は以下の通りです。
- Enterprise または Business Critical プラン
- クラウドサービス プロバイダーを選択可能
- Business Critical プラン
- クラウド リージョンをさらに指定可能
- 例:GEOGRAPHY として US、クラウドサービス プロバイダとして AWS を指定する場合さらに以下のリージョンから選択できる
- us-east-1 (N. Virginia)
- us-east-2 (Ohio)
- us-west-2 (Oregon)
- us-gov-west-1 (GovCloud US West)
- Starter、Standard、または Free プラン
- Google Cloud Platform が唯一のクラウドサービス プロバイダ
- リージョンも指定できない
- Google Cloud Platform が唯一のクラウドサービス プロバイダ
日本国内であれば、執筆時点で AWS、Google Cloud、Azure の各クラウドサービス プロバイダを選択可能です。
※いずれも東京リージョンのみ
顧客データの保持
データの保持
データ処理時に Fivetran 管理のネットワークに保持されるデータの保持期間はデータの種類によって異なります。
詳細は以下のドキュメントに記載があります。
- 顧客データ
- 通常 8 時間未満
- 顧客データが Destination に正常に書き込まれるとすぐに消去される
- 一時データ
- 一部のデータ統合またはレプリケーション時に必要な、データソース固有の一時的なデータ(MySQL のバイナリログや Asana のイベントストリームなど)
- 可能な限り早く削除されるが、まれに削除まで 24 時間以上かかる場合がある
- Webhook コネクタおよび Webhook を使用する他のコネクタからのイベント データ
- データの保持期間はコネクタの種類によって異なり、30日から持続的に保持される場合がある
- Events Data Retention Period | Fivetran documentation
- Eメールコネクタによって収集された電子メールの添付ファイル
- 必要に応じて再同期できるように、添付ファイルを内部 S3 バケットにバックアップし永続的に保存
また、以下の場合も顧客データは Destination に正常に書き込まれるとすぐに消去されますが、データの書き込みプロセスに通常より時間がかかる場合、データはオブジェクト ライフサイクル管理を使用して 30 日後に自動的に消去されます。
- Destination が停止している場合
- データのブロック化または列のハッシュ化
- Fivetran では、データ処理時に、特定の列を同期の対象から除外したり、列の値をハッシュ化することが可能です
- この際、対象の列データも Fivetran 管理のネットワークに一時的に保持される場合があります
- Data Blocking and Column Hashing | Fivetran documentation
上記の他、認証情報やメタデータも持続的に保持されます。
認証情報については、以下に詳細を記載します。
認証情報の保持
通常、データソースへの接続には認証情報が必要です。Fivetran では、継続的にデータを抽出するために、これらの認証情報が保持されます。 この場合、認証情報は Fivetran 管理の鍵管理システムで安全に保管されます。
Business Critical 以上のエディションであれば、Customer-Managed Keys オプションにより、認証情報を暗号化するキーを制御できます。場合によっては、ユーザー側でキーへのアクセスをいつでも無効にして、Fivetran がデータにアクセスできないようにすることが可能です。キーを再度有効化すれば、同期を再開できます。
鍵管理サービスとしては、以下が利用できます。
データソース・Destination との通信
Fivetran における一般的な経路は以下です。
- データソース、コネクタ間
- コネクタ、Destination 間
各通信経路はデフォルトで暗号化(SSL)されます。データソースがデータベースで直接接続する場合は、TLS 暗号化の設定が前提条件になっています。また、データソースが SaaS であっても暗号化されます。
顧客管理のネットワークでデータ処理を行いたい場合
これまでは SaaS としての Fivetran の内容でしたが、Fivetran はその提供形態として、SaaS の他に、Hybrid Deployment と Self-Hosted Deployment にも対応しています。
組織のセキュリティ要件上、一時的であってもデータを外部サービスに渡せない場合は、これらのオプションを検討します。
Hybrid Deployment
現在はプライベートプレビュー段階ではありますが、Business Critical 以上であれば Hybrid Deployment によるアーキテクチャを利用できます。
データ処理サーバーとして、Fivetran とアウトバウンド通信を行う Local Processing Agent を自身が管理するネットワーク内に構築することで、実データを顧客管理のネットワーク外に出すことなく処理を行えるオプションが追加されます。
ハイブリッドなので、SaaS 版と同様にダッシュボードを利用でき、コネクタ等の構成や監視はや SaaS 版同様に行えるようです。ただし、このためにメタデータは Fivetran 管理のネットワークに渡ります。
※図は以下のドキュメントより引用
Fivetran Hybrid Deployment model | Architecture overview
構成手順は以下をご参照ください。
Self-Hosted Deployment
Fivetran では、セルフホスト型モデルとして HVR ソリューションを提供しています。
※図はこちらより引用
HVR の構成要素である Hub System をオンプレミスを含む顧客管理のネットワークに構築することで、独自のサーバーで Fivetran が提供する機能を実行でき、データが外部ネットワークに移動することもありません。最もセキュリティ要件が厳しい場合は、このアーキテクチャが候補となります。
HVR の利用にもビジネスクリティカル以上のエディションが必要です。
さいごに
Fivetran のデータ処理時のセキュリティについて、まとめてみました。
こちらの内容が何かの参考になれば幸いです。
参考