はじめに

複数のソースからデータを抽出し、一元化されたデータウェアハウスにデータを集めるのも大変ですが、データが到着した後はどのようにして安全を確保すればよいのでしょうか。企業は、機密情報を保護するために、共有レベルのセキュリティ(すべてのユーザーがパスワードを共有する)やユーザーレベルのセキュリティ(各ユーザーに個別のアカウントとパスワードを使用する)など、さまざまなデータセキュリティ手段を使用しています。

行レベルのセキュリティは、ユーザーレベルのセキュリティを発展させたもので、データベースの異なる行やレコードの可視性が、個々のユーザーやユーザーグループのアクセスレベルに依存するというものです。例えば、基本的なユーザーは、職能に基づいてデータベースの特定のレコードに対して参照レベルのアクセスしかできませんが、データベース管理者はデータベースのすべてのレコードを閲覧・編集することができます。Google Cloud PlatformAmazon Web Services Microsoft Azureなどの主要なパブリッククラウドプロバイダーは、それぞれのサービスに行レベルのセキュリティを組み込んでいます。

しかし、行レベルのセキュリティは、データを保護するのに本当に最適な方法なのでしょうか?この記事では、行レベルのセキュリティではデータウェアハウスのセキュリティ問題を解決できず、かえってリスクが高まる可能性がある5つの理由をご紹介します。

Table of Contents

  • 理由 #1: 脆弱なセキュリティ設定
  • 理由 #2: 設定ミスが起こりやすい
  • 理由 #3: 単一障害点
  • 理由 #4: サイドチャネル攻撃に弱い
  • 理由 #5: GDPRの非遵守
  • Integrate.ioは機密データ保護にどのように役立つか?

1. 脆弱なセキュリティ設定

行レベルのセキュリティは、ユーザーレベルやシェアレベルのセキュリティに比べて、1つ上のレベルのように見えますが、デメリットが全く無いわけではありません。データベースの規模が大きくなるにつれ、すべてのユーザーやユーザーグループに対して行レベルのセキュリティを適切に管理しようとすると、それだけ時間もかかり、そのプロセスでエラーが発生しやすくなります。言い換えれば、行レベルのセキュリティは非常に脆く、データの収集量やユーザー数の増加に応じて簡単に拡張することができないと言えます。

2. 設定ミスが起こりやすい

理想的には、企業はさまざまなデータ・セキュリティ技術を使用し、最初の保護が破られた場合に備えて、「プランB」(および「プランC」、「プランD」)を用意しておくべきです。残念ながら、行レベルのセキュリティでは、このようなレベルでの徹底した防御を施すことはできません。もしデータベース管理者が行レベルのセキュリティを設定する際に(あるいは新しいデータのために設定を編集する際に)、1つでも設定ミスがあれば、機密データは権限のないユーザーに取り返しのつかない形でさらされてしまうかもしれません。

3. 単一障害点

行レベルのセキュリティは、データウェアハウスの管理者のアカウントが、データベース内のすべての機密情報にアクセスできるという、単一障害点(その部分が故障や攻撃対象となるとシステム全体が動作しなくなる重要な要素)しか持たない可能性がある点も問題です。攻撃者が管理者のアカウントにアクセスした場合(例えば、アカウントの認証情報が漏洩した場合)、何の救済措置もありません。攻撃者は、データウェアハウス全体を閲覧し、データを流出させることができます。

4. サイドチャネル攻撃に弱い

ITセキュリティの分野では、無関係と思われる情報を不用意に漏らすことでコンピュータシステムを悪用しようとする「サイドチャネル攻撃」があります。行レベルのセキュリティでは、情報の直接的な漏洩を防ぐことができても、巧妙な攻撃者によるサイドチャネル攻撃を防ぐには不十分な場合があります。

例えば、従業員の給料の表を分析するために、攻撃者は「1/(salary-50000)」という表現を含むクエリを実行することができます。このクエリが「divide by zero(ゼロ除算)」エラーを返した場合、攻撃者は企業内の誰かが5万ドルの給与を持っていることを把握することができます(「salary-50000」は0に等しいため)。

5. GDPRの非遵守

最後になりましたが、行レベルのセキュリティでは、欧州連合の一般データ保護規則(GDPR)などのデータプライバシーやセキュリティに関する規制に抵触する可能性があります。 GDPRの第32条では、「リスクに見合ったセキュリティレベルを確保するために、適切な技術的および組織的な措置を実施する 」ことを企業に求めています。

特にGDPRでは、有用なデータセキュリティ技術の可能性として、データの仮名化と暗号化について言及しています。しかし、行レベルのセキュリティは、仮名化でも暗号化でもありません。データを権限のないユーザーから隠すだけなので、ユーザーの認証情報にアクセスした悪意のある行為者に対しては脆弱です。

Integrate.ioは機密データ保護にどのように役立つか?

この記事では、行レベルのセキュリティがデータウェアハウスのセキュリティに適しておらず、さらに大きなリスクをもたらす可能性がある5つの理由を説明しました。では、これらのセキュリティ上の懸念を考慮した場合、行レベルのセキュリティに代わる最善の方法は何でしょうか?

データウェアハウス内の機密データを無防備にしておくのではなく、2つの良い選択肢があります。

  • ETL(抽出、変換、ロード)プロセスでデータを暗号化する。
  • データ変換の段階で機密データをフィルタリングして除外し、データウェアハウスに届かないようにする。

いずれの場合も、Integrate.ioのようなパワフルで機能が豊富なETLツールが必要となります。 Integrate.ioは、最先端のETLおよびデータ統合プラットフォームであり、技術的なスキルに関係なく、クラウドデータウェアハウスへのデータパイプラインを構築することができます。Integrate.ioには、100種類以上のコネクタや統合機能、豊富なデータ変換機能があらかじめ用意されており、企業のニーズに合った方法で機密情報を取り扱うことができます。

Related Reading: Encrypt and Decrypt Sensitive Data with Integrate.io

Integrate.ioが自社の機密データを保護するのにどのように役立つか興味がありますか?ぜひオンラインデモにお申しこみいただき、ご確認ください。