Oracle Database 12c の新機能「Oracle Data Redaction」

今号では、Oracle Database 12c の新機能であるOracle Data Redaction 機能をご紹介します。是非ご一読ください。

Oracle Data Redaction

Oracle Data Redaction を使用すると、select 文の結果がアプリケーションに返される直前に、その結果に含まれる機密データをマスク (リダクション) できます。マスクといってもあくまでアプリケーションに返される情報がマスクされるだけであり、ディスクやキャッシュ上のデータが変更されるわけではありません。
例えば、コールセンターの職員が使用するアプリケーションにおいてクレジットカード番号の下 4 桁のみを表示するというように機密データを保護できます。

リダクションの方法

リダクションには以下の 4 つの方法があります。

1 完全リダクション
完全リダクションを使用すると、列の値が固定値にリダクションされます。具体的には以下のように処理されます。
  • 文字データは 1 つの空白にリダクションされます。
  • 数値データは 1 つのゼロにリダクションされます。
  • 日時データは 2001/01/01 にリダクションされます。

例)
データベースのデータ リダクション済みデータ

AAAAAA ' '
35000 0
2013/12/01 2001/01/01
なお、この固定値は DBMS_REDACT.UPDATE_FULL_REDACTION_VALUES プロシージャを使用すれば変更することもできます。
2 部分リダクション
部分リダクションを使用すると、列の値が部分的に変更されます。
例えば、文字列の先頭 4 桁を「#」に変更したり、数値の先頭 3 桁を 9 に変更できます。

例)
データベースのデータ リダクション済みデータ

ABCDEFG ####EFG
35000 9990