11 Oracle Data Redactionの概要

Oracle Data Redactionとは、機密データを、リアルタイムでリダクションする機能です。

11.1 Oracle Data Redactionとは

リダクションとは、ドキュメントやデータベースから秘密情報や機密情報を選択的に削除または不明瞭化するプロセスです。Oracle Data Redactionを使用すると、アプリケーションが発行する問合せから返されるデータをリダクションできます。

次の方法のいずれかを使用して、列データをリダクションできます。

  • 完全リダクション。列データの内容をすべてリダクションします。問合せを行ったアプリケーション・ユーザーに返される、リダクションされた値は、列のデータ型によって異なります。たとえば、NUMBERデータ型の列はゼロ(0)でリダクションされ、文字データ型は空白1つでリダクションされます。

  • 部分リダクション。列データの一部をリダクションします。たとえば、社会保障番号の最後の4桁以外をアスタリスク(*)でリダクションできます。

  • 正規表現。正規表現を使用してリダクションするデータのパターンを検索できます。たとえば、正規表現を使用して、文字の長さが変化する可能性のある電子メール・アドレスをリダクションできます。これは、文字データのみで使用するように設計されています。

  • ランダム・リダクション。問合せを行ったアプリケーション・ユーザーに表示されるリダクションされたデータは、列のデータ型に応じて、表示されるたびにランダムに生成された値として表示されます。

  • NULL化リダクション。NULL化リダクション・タイプは、列内のすべてのデータをリダクションし、NULL値で置き換えます。

  • リダクションなし。リダクションなしタイプ・オプションを使用すると、リダクション・ポリシーが定義された表に対する問合せの結果に影響を与えることなく、ポリシーの内部動作をテストできます。このオプションを使用して、リダクション・ポリシー定義を本番環境に適用する前にテストできます。

Oracle Databaseでは、ユーザーがデータにアクセスするとき(つまり問合せ実行時)にランタイムのリダクションが適用されます。このソリューションは、本番システムでも十分の機能します。データがリダクションされている間、処理中のすべてのデータは通常どおりに実行され、バックエンドの参照整合性制約は保持されます。

データ・リダクションは、ペイメント・カード業界データ・セキュリティ基準(PCI DSS)などの業界規制に準拠するために役立ちます。たとえば、業務のために知ることの必要性に応じてカード保有者データへのアクセスを制限する場合に役立ちます。

11.2 Oracle Data Redactionを使用する状況

機密データをマスクするために、そのデータを現実的な架空のデータに永続的に置き換えるデータ・マスキングとは異なり、データ・リダクションでは、データベース内のデータは未変更のままにしてデータベースから受信されるデータをマスクします。

データ・リダクションを使用すると、いくつかの異なるリダクション・スタイルを使用して簡単にデータを偽装できます。

Oracle Data Redactionは、特定のアプリケーション・ユーザーに戻される、個人を識別できる情報(PII)の問合せの結果セットから、特定の文字をリダクションする必要がある場合に最適です。たとえば、末尾が4320の米国社会保障番号番号を、***-**-4320のように提示できます。

Oracle Data Redactionは特に、コール・センター・アプリケーションや読取り専用のアプリケーションに適しています。更新を実行してデータベースに書き戻すアプリケーションにOracle Data Redactionを使用する場合は注意してください。リダクションされたデータがこのデータベースに書き戻されることもあるからです。

11.3 Oracle Data Redactionを使用する利点

Oracle Data Redactionをデータの保護に使用するといくつかの利点があります。

これらの利点は次のとおりです。

  • 実行時にリダクションを適用することで、基礎となるデータやストレージの要件に影響を与えることはありません

  • 実行の際にパフォーマンスへの影響がほとんどありません

  • アプリケーションの変更は不要です

  • Oracle Redactionの指定と管理にはスクリプトまたはOracle Enterprise Mangerユーザー・インタフェースを使用できます

  • オンプレミスとクラウドのどちらのデータベースでも使用できます

11.4 Oracle Data Redactionのターゲットのユースケース

Oracle Data Redactionは、一般的なユースケース・シナリオに対応します。

11.4.1 読取り専用静的ページの機密データに対応するOracle Data Redaction

Oracle Data Redactionを使用すると、ダッシュボードやレポートなどの読取り専用静的ページがあるアプリケーション画面内の機密データをリダクションできます。

Oracle Data Redactionは、ダッシュボードやレポートなどの操作インタフェースのデータを動的にリダクションするために使用できます。機密列にリダクション・ポリシーを定義できるため、データはアプリケーションに渡される前にリダクションされます。ページは静的表示専用であり、データはデータベースにポストされないため、リダクションされたデータがデータベースに書き込まれてレコードが破損する可能性はありません。

11.4.2 管理ツールによるデータ公開の防止に対応するOracle Data Redaction

Oracle Data Redactionは、データのロードや表示のためのツールなどのデータ管理ツールによって機密データが公開されないようにします。

多くのアプリケーションには、ユーザーがデータをロードして管理できるツールが含まれています。たとえば、SaaSアプリケーションなどはサブスクライバが顧客情報をバルク・ロードして管理できるようになっています。機密データに対してリダクション・ポリシーを定義できるため、そのようなユーザーが該当する管理アクティビティを実行したときに機密データはリダクションされます。

11.4.3 オフライン分析からのデータの開示を防止するOracle Data Redaction

Oracle Data Redactionは、本番データに対してオフライン分析を実行するユーザーへの機密データの開示を防止します。

Oracle Data Redactionは、データ・ウェアハウス内で制約されているデータに対して分析を実行するユーザーに、機密情報が公開されないようにするために使用できます。機密データに対するリダクション・ポリシーを定義できるため、機密データはデータベースから取得したときにリダクションされ、分析ソフトウェアのユーザーに表示されます。

11.4.4 データベース・アプリケーションにおけるOracle Data Redactionの使用

Oracle Data Redactionは、データベース・アプリケーションに表示される機密データを保護します。

データ・リダクションは、元のデータ型と(オプションで)形式を維持するためアプリケーション・ユーザーに対して透過的です。データは同じバッファ、キャッシュ、記憶域に保持され、呼出し元にSQL問合せの結果が戻される直前に初めて変更されるので、データベースに対して非常に透過的です。リダクションは、基礎となる同じデータベースを使用するすべてのアプリケーションに一貫して適用されます。リダクションされたデータのみが表示されるアプリケーション・ユーザーを指定するには、SYS_CONTEXT関数でデータベースに渡されるアプリケーション・ユーザー情報をチェックします。データは、現在のデータベースまたはアプリケーション・ユーザーの属性に基づいてリダクションでき、特定のリダクション・ポリシーに複数の論理条件を実装できます。また、データ・リダクションは、パフォーマンス・オーバーヘッドを最小化する方法で実装されます。このような特徴から、Oracle Data Redactionは、共通の本番データベースを共有する様々なアプリケーション、分析ツール、レポート・ツールおよび監視ツールを使用する場合に非常に適しています。主なターゲットはアプリケーションに向けた本番データのリダクションですが、Oracle Data Redactionは、カスタムのデータ管理ツールにも使用できます(非定型の問合せを発行していない場合)。

11.4.5 非定型データベース問合せにおけるOracle Data Redactionの考慮事項

データベース・ユーザーによって実行される非定型の問合せの機密データをリダクションすると便利な場合に遭遇する可能性があります。

たとえば、本番アプリケーションのサポート中に、ユーザーは、非定型のデータベース問合せを実行して、アプリケーションの緊急な問題のトラブルシューティングを行って修正する必要がある場合があります。Oracle Data Redactionは、データベースに対して非定型問合せを実行するデータベース・ユーザーにデータが公開されることを防ぐために設計されているわけではありませんが、誤ってデータが公開される危険性を少なくする追加のセキュリティ層として利用できます。そのようなユーザーは、データを変更したり、データベース・スキーマを変更したり、SQL問合せインタフェースを完全に回避する権限があるため、悪質なユーザーは、特定の状況ではデータ・リダクション・ポリシーをバイパスすることができます。

データ・リダクションでは非定型のSQLのWHERE句に制限はなく、問合せ列にデータ・リダクション・ポリシーが存在し、リダクションされた値のみが表示されている場合でも、WHERE句を反復的な方法で使用して実際のデータを推論できます。

Oracle Databaseのセキュリティ・ツールは、全体的なセキュリティを向上させるために同時に使用するように設計されています。Oracle Data Redactionを補完するものとして1つ以上のこれらのツールをデプロイすることで、全体的なセキュリティ体制を改善することができます。