プライマリ・コンテンツに移動
Oracle® Data Masking and Subsettingガイド
Enterprise Manager 13c
E72570-04
目次へ移動
目次
索引へ移動
索引

前
次

1 Oracle Data Masking and Subsettingの概要

Enterprise Manager for Oracle Database Plug-inのデータ・マスキングおよびサブセット化機能では、テスト・データを安全に管理できます。

現実的なテストを実行すると、テスト環境内の非本番ユーザーに機密データが公開されてしまうリスクがあります。Oracle Databaseのテスト・データの管理機能では、テスト・データに対してデータ・マスキングおよびデータ・サブセット化を実行し、このリスクを最小限にできます。

本番データをテスト環境にコピーした場合、機密情報がアプリケーション開発者や外部コンサルタントなどの非本番ユーザーに漏えいしてしまうというリスクがあります。現実的な環境のテストを行うには、このような非本番ユーザーが元のデータの一部にアクセスする(ただし、すべてのデータにはアクセスしない)ようにする必要があります(特に情報が機密情報とみなされる場合)。

Oracle Databaseには、このリスクを低減する次を実行するテスト・データ管理機能があります。

注意:

これらのセキュリティ機能を使用するには、Oracle Data Masking and Subsetting Packライセンスが必要です。

データのマスキングとサブセッティングの必要性

データをマスクおよびサブセットする理由を次に示します。

  • 機密データの拡散の制限: セキュリティ脅威の増加により機密情報の公開を制限する必要性が増しました。その一方、非本番目的(テストや開発など)のために本番データをコピーすることは、機密データを拡散し、セキュリティやコンプライアンスの範囲を拡大し、データ侵害の可能性が増大します。

  • 必要なものを共有: 通常、企業は様々な理由で内部パーティおよび外部パーティと本番データ・セットを共有する必要があります。たとえば、クラウド・アプリケーション・プロバイダはオンデマンドで、個別のサブスクライバに固有の情報を抽出および共有する必要がある場合があります。別の例としては、裁判所命令を果たす企業は本番データのサブセットを抽出し、裁判所と共有する必要があります。いくつかのケースでは、本番データセット全体を共有するより、情報の一部またはサブセットを抽出および共有する方が効率的です。

  • データの機密に関する法律および標準に準拠: PCI-DSSや欧州連合(EU)一般データ保護規則(GDPR)などのデータの機密に関する標準では、非本番環境での機密情報の保護を主張します。これは、こうした環境が通常、本番システムほど保護または監視されていないためです。EU GDPRでは、情報のサブセットの識別および処理を必要とする個人の忘れられる権利、抹消の権利、ポータビリティの権利または修正の権利を義務付けています。

  • ストレージ・コストの最小化: 本番データ全体をテスト、開発およびQA目的に使用すると、ストレージ・コストを追加する必要性が生じ、テストおよび開発サイクルを延ばし、ストレージ全体および運用コストが増大します。

データのマスキングおよびサブセッティングは前述のユース・ケースに対応します。データ・マスキングは、本物に近い架空のデータで機密データを置き換えるプロセスです。データ・サブセッティングは、データを廃棄または抽出することで、サイズを小さくするプロセスです。マスキングは、機密性の高い本番データを匿名化することでデータ拡散を制限します。サブセッティングは、データの削除、または共有やアーカイブのためにデータのサブセットを抽出することにより、ストレージ・コストを削減します。データ・マスキングは静的データ・マスキングとも呼ばれ、データ・サブセッティングはテスト・データ管理とも呼ばれます。

コンポーネント

この項では、Oracle Data Masking and Subsettingのコンポーネントについて説明します。

アプリケーション・データ・モデル

アプリケーション・データ・モデリング(ADM)は、自動検出プロシージャおよび機密列タイプを介して、Oracleデータベース表からの機密データの検出を簡素化します。自動検出プロシージャは、機密情報を含む列を検出するだけでなく、データベースに定義されたそれらの列の参照関係や親子関係も識別します。

機密列タイプは、列名、列データおよび列コメント内のデータ・パターンの組合せを使用して、国民保険番号などの機密データ要素のフォレンジックを作成します。自動検出プロシージャは、データベースの機密情報をスキャンする際に、機密列タイプを利用してデータベース表の列のデータをサンプリングします。

アプリケーション・データ・モデリングには、クレジット・カード番号、社会保障番号、電話番号などの様々な即時利用可能な機密列タイプが提供されています。独自の機密列タイプは、正規表現を使用して簡単に作成できます。Oracle Data Masking Pack、およびOracle Enterprise Managerのデータ検出およびモデリング機能により、企業はデータ・パターン検索基準を定義でき、データベース管理者による機密要素の検索が可能になります。たとえば、15または16桁のクレジット・カード番号、9桁の書式設定された米国の社会保障番号などのデータ・パターンがあります。

Oracle Data Masking and Subsettingでは、アプリケーション・データ・モデルをインポートおよびエクスポートすることもできます。

詳細は、「アプリケーション・データ・モデリング」の章を参照してください。

データ・マスキング・フォーマット・ライブラリ

Oracle Data Masking and Subsettingにより、セキュリティ管理者は、共通マスキング・フォーマットの集中定義を管理できます。この集中定義により、データベース管理者は、データベースおよび機密データが存在する場所に関係なく、企業全体にわたって同じマスキング・ルールを適用できます。したがって、組織および企業は、機密データのマスキングの一貫性を維持し、データ共有のために設定された基準に準拠できます。

データ・マスキング・フォーマット・ライブラリには、一般的に使用されている機密データのための集中的なデータ・マスキング・フォーマットのセットが含まれています。たとえば、電話番号、社会保障番号、クレジット・カード番号および架空の姓名のマスク・フォーマットがあります。セキュリティ管理者は、これらのマスク・フォーマットを定義し、企業全体のDBAによって使用されるように、それらをフォーマット・ライブラリで管理できます。

データ・マスキング・フォーマット・ライブラリには、次のものが提供されています。

  • データ・マスキング定義で使用できる、いくつかの組込みの即時利用可能なマスキング・フォーマットおよびプリミティブ

  • 追加のフォーマットを作成するために組み合せが可能な組込みのマスク・プリミティブ

  • 複雑なフォーマットを処理するためのユーザー定義のSQLまたはPL/SQL関数

データ・マスキング・ライブラリには、次のプリミティブも含まれています。

  • 固定数値

  • 固定文字列

  • ランダム文字列

  • ランダム桁数

  • ランダム数値

  • ランダム日付

データ・マスキング変換

Oracle Data Masking and Subsettingは、洗練されたマスキング変換を提供します。マスキング・フォーマットがデータ・マスキング定義の基礎的要素として考えられる場合、マスキング変換は、多様なビジネス要件に応じてこれらのマスキング・フォーマットを調整します。Oracle Data Masking and Subsettingは、次のデータ・マスキング変換を提供します。

  • 条件付きマスキング: 様々な条件に応じてマスキング・フォーマットを調整する機能を提供します。たとえば、一意の個人識別子を含む列をマスキングすることを検討してください。アメリカ合衆国に属する個人識別子は、社会保障番号のフォーマットを使用してマスキングされ、イギリスに属する個人識別子は、国民保険番号のフォーマットを使用してマスキングされます。

  • 複合マスキング(グループ化オプションとも呼ばれる): 関連する列間でマスキングされるデータが同じ関係を維持できるように、関連列をグループとしてマスキングします。たとえば、市区町村、都道府県、郵便番号などのアドレス・フィールドをマスキングすることを検討してください。これらのアドレス・フィールドの値は、マスキング操作が完了した後も整合性がとれています。

  • 確定的/一貫したマスキング: 様々なデータベース間で、指定された入力に対して一貫性のある出力を生成します。この変換は、複数のアプリケーション間でデータの整合性を維持するために、また、シングル・サインオン環境でシステムの整合性を保つために役立ちます。たとえば、人材管理アプリケーション、顧客関係管理アプリケーションおよび販売データ・ウェアハウスという3つのアプリケーションを検討してください。これらのアプリケーションは、一貫したマスキングを必要とする従業員IDなどの共通フィールドを持つ可能性があります。置換および暗号化マスキング・フォーマットは、確定的マスキング変換を提供します。

  • シャッフル: 列内のフィールドをランダムにシャッフルできます。この変換は、機密データ要素間の1対1のマッピングを壊すのに役立ちます。たとえば、医療情報をマスキングするときに個人の医療記録を含む列をシャッフルできます。

  • キーベースの可逆マスキング(暗号化フォーマットとも呼ばれる): 入力データのフォーマットを維持しながら、安全なキー文字列を使用して元のデータを暗号化および復号します。この変換は、3DESアルゴリズムを使用し、企業が分析、レポートまたは任意の他の業務処理のためにデータをマスキングしてサード・パーティに送信する必要がある場合に役立ちます。サード・パーティから処理されたデータを受信した後、データの暗号化に使用したのと同じキー文字列を使用して元のデータを復元できます。

  • フォーマットを保持するランダム化(自動マスク・フォーマットとも呼ばれる): 入力長、入力での文字と数字の位置、大/小文字の区別および特殊文字を保持してデータをランダム化します。

データ・サブセッティング方法

Oracle Data Masking and Subsettingは、定義のしやすい目標ベースおよび条件ベースのサブセッティング方法により、サブセッティングを簡素化します。

  • 目標ベースのサブセッティング: 目標に基づいてデータをサブセット化します。目標は、相対的な表サイズにすることができます。たとえば、1万行を含む表の1%のサブセットを抽出します。

  • 条件ベースのサブセッティング: 条件に基づいてデータをサブセット化します。条件は、SQL WHERE句を使用して指定します。SQL WHERE句は、バインド変数をサポートします。

    条件は、時間に基づくことができます。たとえば、特定の年より前に作成されたすべてのユーザー・レコードを破棄します。

    条件は、地域に基づくことができます。たとえば、新しいアプリケーション開発のために、アジア太平洋地域に関連する情報を抽出します。

アプリケーション・テンプレート

Oracle Data Maskingアプリケーション・テンプレートは、Oracle E-Business SuiteおよびOracle Fusion Applicationsなどのパッケージ・アプリケーションのための事前識別済の機密列、それらの関係、および業界標準のベスト・プラクティス・マスキング方法をすぐに利用できる状態で提供します。Oracleが提供する最新のデータ・マスキングおよびサブセッティング・テンプレートを取得するには、自己更新機能を使用します。

アーキテクチャ

Oracle Data Masking and Subsettingアーキテクチャは、2層フレームワークで構成されています。Cloud Control UIは、管理者がすべての管理タスクを処理するためのグラフィカル・ユーザー・インタフェースを提供します。これらのクライアント・コンポーネントは、ローカルにインストールするか、Webブラウザで起動できます。Oracle Enterprise Managerフレームワークは、Oracle Management Serverとデータベース・リポジトリで構成されています。

管理サーバーは、Enterprise Managerフレームワークのコアです。管理ユーザー・アカウントを提供し、ジョブやイベントなどの管理機能を処理し、Enterprise Management AgentとともにCloud Control UIとノード間の情報フローを管理します。Oracle Enterprise Manager Agentは、Oracle Management Serverと通信し、Cloud Control UIや他のクライアント・アプリケーションによって送信されるタスクを実行します。

Enterprise Management Agentは、各監視対象ホストにインストールされ、これらのホストで実行されているすべてのターゲットを監視し、Oracle Management Serverにその情報を伝達し、ホストとそのターゲットを管理および維持する役割を担います。

図1-1 Oracle Data Masking and Subsettingのアーキテクチャ

図DMS_architecture.pngは、Oracle Data Masking and Subsettingで使用されるアーキテクチャの概要を提供します。

実行方法

Oracle Data Masking and Subsettingは、データのマスキングとサブセッティングのための2つのモードを提供します。

  • インデータベース

  • インエクスポート

インデータベース

インデータベース・モードでは、非本番データベース内のデータを直接にマスキングおよびサブセッティングし、本番環境への影響は最小限であるか、まったく影響を与えません。インデータベース・マスキングおよびサブセッティング・モードでは、データベース内のデータが永続的に変更されるため、このモードは、本番データベースで使用するのではなく、ステージング、テストおよび開発データベースなどの非本番環境のために使用することを強くお薦めします。

インエクスポート

インエクスポート・モードでは、データベースからデータを抽出するときに、ほぼリアルタイムでデータをマスキングおよびサブセッティングします。マスキングおよびサブセッティングされた抽出データは、データ・ポンプ・エクスポート・ファイルに書き込まれた後、テスト、開発またはQAデータベース内にインポートされます。通常、インエクスポート・モードは、本番データベースに使用されます。

異種

Oracle Data Masking and Subsettingは、IBM DB2、Microsoft SQL ServerおよびSybaseなどの任意のOracle以外のデータベースからのデータのデータ・マスキングもサポートします。

Oracle Data Masking and Subsettingでは、DBリンクおよびゲートウェイを使用して、Oracle以外の本番データベースからデータを読み取り、Oracleベースのステージング環境にデータをコピーし、Oracleステージング環境でマスクを適用した後、Oracle以外のテスト・データベースに書き込みます。

これはデータ・マスキングのためにOracleデータベースで使用されるのと同じマスキング方法を使用しています。

注意:

Oracle Data Masking and Subsettingは、Oracle以外のデータベースの自動データ検出をサポートせず、また、Oracle以外のデータベースに対する参照整合性を実行しません。

方法

Oracle Data Masking and Subsettingでは、次の方法を使用して非本番データベースを保護し、コンプライアンス要件を満たしている、架空であるが関連のあるデータによって、機密データを置き換えます。

  • アプリケーション・データ・モデルの作成: 機密データおよびデータの関係を検出し、アプリケーション・データ・モデルを作成または割り当てます

  • マスキング・フォーマットおよび基準の選択: 検出された機密データに基づいて、データ・マスキング定義、マスキング・フォーマット・タイプおよびテンプレートを作成します。

  • プレビューおよび検証: マスキング・アルゴリズムの結果およびサブセットの削減結果をプレビューすることで機密データを保護します

  • マスキング変換の実行: インデータベースまたはインエクスポートのマスキングおよびサブセッティング変換を実行し、マスキングされたデータを検証します。

次の図は、Oracle Data Masking and Subsettingで使用される方法を示しています。

図1-2 方法

DMS_methodology.pngは、Oracle Data Masking and Subsettingで使用される4ステップの方法について説明しています。

ワークフロー

次の図は、Oracle Data Masking and Subsettingワークフローについて説明しています。

図1-3 Oracle Data Masking and Subsettingワークフロー

DMS_workflow.pngは、フロー・チャート形式でOracle Data Masking and Subsettingワークフローについて説明しています。Data Masking and Subsettingワークフローの3つの重要なステップは、a)アプリケーション・データ・モデルの作成 b)データ・マスキング定義の作成および c)データ・サブセッティング定義の作成です。

次のステップでは、Oracle Data Masking and Subsettingワークフローについて説明します。

  1. アプリケーション・データ・モデルの作成: Oracle Data Masking and Subsettingの使用を開始するには、アプリケーション・データ・モデル(ADM)を作成する必要があります。ADMは、アプリケーション・メタデータ、参照関係を取得し、ソース・データベースから機密データを検出します。

  2. データ・マスキング定義の作成: ADMを作成したら、次のステップは、データ・マスキング定義を作成することです。マスキング定義には、表の列とこれらの各列のマスキング・フォーマットに関する情報が含まれます。マスキングされたデータをエクスポート・ファイルに書き込むことによって、マスクを作成できます。

  3. データ・サブセッティング定義の作成: 表ルールおよびルール・パラメータを定義するためにデータ・サブセッティング定義を作成します。サブセット・データをエクスポート・ファイルに書き込むことによって、サブセットを作成できます。