AWS Glue で機密データを処理出来る Sensitive data detection API に日本向けのデータパターンが追加されたので試してみた

2022.11.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

いわさです。

AWS Glue では、データに含まれる機密データを処理するための Sensitive data detection API という機能があります。

これまで日本語圏のデータはサポート範囲が限定的だったのですが、本日のアップデートでいくつか日本および英国のデータタイプがサポートされるようになりました。
本日は日本のダミーデータを用意して検証を行ってみました。

Glue Studio でジョブを作成

Sensitive data detection API の利用方法です。
AWS Glue Studio で Detect Sensitive Data アクションが用意されていますのでそちらを利用します。

以下のように Glue Studio の外部から利用することも可能です。

本日時点で利用可能な標準データパターンは合計 31 パターンあります。
そのうち Japan のカテゴリには以下の 4 つのパターンが用意されています。

  • Japan Bank Account
  • Japan Driving License
  • Japan My Number
  • Japan Passport

クレジットカード番号や E メールアドレスなどは Universal のカテゴリで以前から定義されています。

今回は以下のように抽出したものを???でマスキングするようにしてみます。

ダミーデータ

この記事で利用している検証用ダミーデータの生成は以下を利用させて頂きました。

なお、ダミーデータではありますが以降の検証結果からは氏名をマスクしています。
Glue ジョブで処理したものはマスクされていません。

検証結果

氏名・住所・電話番号・メールアドレスなど

ここでは今回 Japan カテゴリで追加されたもの以外の基本的な情報を確認してみました。

連番,氏名,氏名(カタカナ),性別,電話番号,メールアドレス,郵便番号,住所,,,,,生年月日
1,***,***,男,0982291755,chuukichi6455@nsnypoin.lr,889-0516,宮崎県,延岡市,鯛名町,3-17,,1966/06/12
2,***,***,女,0868076179,eiko103@toamkeer.gwn,715-0002,岡山県,井原市,神代町,3-12-7,,1978/10/25
3,***,***,男,0174370095,w=ljxzppojtomio01436@mnfk.cgo.tcy,039-2187,青森県,上北郡おいらせ町,緑ケ丘,3-11-6,緑ケ丘ヒル208,2002/01/31
4,***,***,女,0175534151,haruko474@qhpbzhjdbc.ip,039-1505,青森県,三戸郡五戸町,石仏前,1-8-2,,1995/08/25
5,***,***,男,0885835686,Kazuki_Terashima@vvgh.mt,779-0303,徳島県,鳴門市,大麻町池谷,2-17-1,ザ大麻町池谷413,1990/10/20
6,***,***,女,0175395416,mai0516@ksnaafl.yel,036-8154,青森県,弘前市,豊原,3-17-13,,1981/06/11
7,***,***,女,0884866619,frgfbgzxljidrio941@hzvib.wv,782-0013,高知県,香美市,土佐山田町町田,3-6-18,,2000/04/29
8,***,***,男,07387831,afphbjxq-vwakio234@ousni.vk.jhf,644-0043,和歌山県,日高郡美浜町,吉原,3-19,,1969/06/09
9,***,***,女,0769550286,madoka_nakagawa@nixy.pg,936-0019,富山県,滑川市,坪川新,4-12,,1999/05/26
10,***,***,女,0761786236,motokotakamura@omneiypg.pru,927-2171,石川県,輪島市,門前町本市,1-15-15,,1973/06/19

処理結果としては以下のようになりました。

連番,氏名,氏名(カタカナ),性別,電話番号,メールアドレス,郵便番号,住所,,生年月日
1,***,***,男,???,???,889-0516,宮崎県,,1966/06/12
2,***,***,女,0868076179,???,715-0002,岡山県,,1978/10/25
3,***,***,男,0174370095,???,039-2187,青森県,緑ケ丘ヒル208,2002/01/31
4,***,***,女,???,???,039-1505,青森県,,1995/08/25
5,***,***,男,0885835686,???,779-0303,徳島県,ザ大麻町池谷413,1990/10/20
6,***,***,女,0175395416,???,036-8154,青森県,,1981/06/11
7,***,***,女,0884866619,???,782-0013,高知県,,2000/04/29
8,***,***,男,07387831,???,644-0043,和歌山県,,1969/06/09
9,***,***,女,0769550286,???,936-0019,富山県,,1999/05/26
10,***,***,女,0761786236,???,927-2171,石川県,,1973/06/19

漢字氏名、カナ氏名、住所や生年月日、郵便番号などは処理されませんでした。
一方で一部の電話番号は処理対象となり、メールアドレスについては 10 件全てが処理対象となっていました。

今回のアップデートで名前などについても日本向けの対応が追加されたのかと少し思ったのですがそうではないようです。

クレジットカードとマイナンバー(ハイフンなし)

続いてクレジットカードとマイナンバーを処理してみます。
ここではマイナンバーについてはハイフンが含まれないものを用いています。

"氏名","氏名(ひらがな)","年齢","生年月日","性別","血液型","メールアドレス","電話番号","携帯電話番号","郵便番号","住所","会社名","クレジットカード","有効期限","マイナンバー"
"***","***",41,"1981年03月07日","女","A","murayama_37@example.com","0558-21-0488","080-4055-6311","429-7434","静岡県浜松市西区大平台2丁目3番4号","有限会社池田屋","3555610646918309","12/24","511847936090"
"***","***",26,"1996年09月13日","男","A","mizuguchi_913@example.net","0930-83-0774","070-4563-1038","801-3452","福岡県福岡市博多区吉塚2-3-17","株式会社サンフィールド","4582391049296644","10/24","613782939795"
"***","***",29,"1992年12月28日","男","O","aoki_1228@example.ne.jp","06-9507-3780","050-2160-5598","538-1378","大阪府大阪市中央区博労町1-5-6","","371732851466085","07/23","068327408830"
"***","***",43,"1979年07月09日","女","O","sachiikeda@example.org","03-9054-8105","080-6421-0163","108-6152","東京都大田区西蒲田2-4-13西蒲田レイセニット506","株式会社三星","4731566446652917","07/25","427806072234"
"***","***",63,"1959年11月06日","女","O","asukauchiyama@example.co.jp","03-3809-3898","090-2004-9908","200-2821","東京都渋谷区神宮前2丁目1番7号神宮前ブランシエラ315","","5189375468464530","10/27","994030383228"
"***","***",49,"1973年03月11日","男","A","hideokawasaki@example.ne.jp","017-113-6071","070-0358-7273","033-4335","青森県八戸市北白山台3-3-1007","有限会社前田建設","374869901899431","11/23","881656979336"
"***","***",77,"1945年02月20日","女","A","abe_kanade@example.net","0867-37-0594","070-3504-6980","709-2479","岡山県岡山市北区奉還町3-5-20","","3566429265962085","12/25","203250654144"
"***","***",33,"1989年03月17日","男","B","tomoakiono@example.org","028-035-3674","080-0916-6302","329-3773","栃木県小山市西城南2丁目2番8号","有限会社橋本","3567448490907888","01/27","493427672740"
"***","***",80,"1942年10月16日","女","A","kinoshitajunko@example.co.jp","0467-59-9815","080-0228-2152","222-9624","神奈川県横浜市鶴見区鶴見中央1丁目1番3号","","4175978339645549","08/26","269179876328"
"***","***",75,"1947年08月11日","男","B","arai_811@example.net","0949-89-8113","090-3389-5277","802-6348","福岡県福岡市南区横手1-2-8ガーデンズ706","","371277396512118","08/26","069795888390"

処理結果としては以下のようになりました。

氏名,氏名(ひらがな),年齢,生年月日,性別,血液型,メールアドレス,電話番号,携帯電話番号,郵便番号,住所,会社名,クレジットカード,有効期限,マイナンバー
"***","***",41,1981年03月07日,女,A,???,0558-21-0488,080-4055-6311,429-7434,静岡県浜松市西区大平台2丁目3番4号,有限会社池田屋,???,12/24,???
"***","***",26,1996年09月13日,男,A,???,0930-83-0774,070-4563-1038,801-3452,福岡県福岡市博多区吉塚2-3-17,株式会社サンフィールド,???,10/24,???
"***","***",29,1992年12月28日,男,O,???,06-9507-3780,050-2160-5598,538-1378,大阪府大阪市中央区博労町1-5-6,,???,07/23,068327408830
"***","***",43,1979年07月09日,女,O,???,03-9054-8105,080-6421-0163,108-6152,"東京都大田区西蒲田2-4-13西蒲田レイセニット506",株式会社三星,???,07/25,???
"***","***",63,1959年11月06日,女,O,???,03-3809-3898,090-2004-9908,200-2821,"東京都渋谷区神宮前2丁目1番7号神宮前ブランシエラ315",,???,10/27,???
"***","***",49,1973年03月11日,男,A,???,017-113-6071,070-0358-7273,033-4335,青森県八戸市北白山台3-3-1007,有限会社前田建設,???,11/23,???
"***","***",77,1945年02月20日,女,A,???,0867-37-0594,070-3504-6980,709-2479,岡山県岡山市北区奉還町3-5-20,,???,12/25,???
"***","***",33,1989年03月17日,男,B,???,028-035-3674,080-0916-6302,329-3773,栃木県小山市西城南2丁目2番8号,有限会社橋本,???,01/27,493427672740
"***","***",80,1942年10月16日,女,A,???,0467-59-9815,080-0228-2152,222-9624,神奈川県横浜市鶴見区鶴見中央1丁目1番3号,,???,08/26,???
"***","***",75,1947年08月11日,男,B,???,0949-89-8113,090-3389-5277,802-6348,福岡県福岡市南区横手1-2-8ガーデンズ706,,???,08/26,069795888390

メールアドレスはやはりしっかり処理されていますね。パターンとしてわかりやすいのでしょうね。
また、クレジットカード番号も全てマスクされています。

マイナンバーについては 10 件中 8 件が処理されていますが 2 件が処理されていません。
ただの数字の 12 桁以外の条件が含まれておりダミーデータがそれに該当しなかったということでしょうか。チェックデジットとかだろうか。

運転免許証番号とマイナンバー(ハイフンあり)

続いて運転免許証番号とハイフンありのマイナンバーを処理してみましょう。

名前,年齢,生年月日,マイナンバー,職業,運転免許証番号 ,血液型
***,40,1982/02/07,4264-8402-8190,サラリーマン,-,O
***,22,2000/09/07,5367-6201-3310,大学生,479903874740,B
***,31,1991/01/02,8334-9008-8328,フリーター,469006463050,A
***,31,1991/03/26,5490-9724-1360,看護師,489005129640,A
***,39,1982/11/10,4782-9940-2956,フリーター,-,A
***,26,1996/05/26,8970-9637-8599,大型トラック運転手,549505760680,A
***,31,1991/09/25,2757-7602-3638,サラリーマン,459007305390,O
***,21,2001/04/21,3178-7965-1933,大学生,-,A
***,37,1985/01/28,2379-3302-3052,フリーター,928409004700,A
***,28,1993/12/25,5099-7953-6534,国家公務員,629301283710,A

処理結果としては以下のようになりました。

名前,年齢,生年月日,マイナンバー,職業,運転免許証番号,血液型
***,40,1982/02/07,4264-8402-8190,サラリーマン,-,O
***,22,2000/09/07,5367-6201-3310,大学生,???,B
***,31,1991/01/02,???,フリーター,???,A
***,31,1991/03/26,5490-9724-1360,看護師,???,A
***,39,1982/11/10,???,フリーター,-,A
***,26,1996/05/26,???,大型トラック運転手,???,A
***,31,1991/09/25,???,サラリーマン,???,O
***,21,2001/04/21,???,大学生,-,A
***,37,1985/01/28,???,フリーター,???,A
***,28,1993/12/25,???,国家公務員,???,A

ここでもマイナンバーは全てが処理されているわけではなく、10 件中 7 件が処理されていました。
一方で運転免許証番号については 10 件全て処理されています。

2022 年 11 月 12 日 追記 

マイナンバーについて本日時点でいくつかサンプルデータで検知出来ていないものがあります。
内部ロジックは開示されていませんがチェックデジットが関係しているようです。

こちらについて shimo(@shimo_s3) さんが検証されていらっしゃいますので紹介させて頂きます。

さいごに

本日は AWS Glue で機密データを処理出来る Sensitive data detection API に日本向けの検出機能が追加されたので試してみました。

サポートされている範囲として国内向けの全てを網羅出来ているわけではないのかもしれませんが、運転免許証番号やマイナンバーなど限定した範囲で導入出来そうです。

たまにいくつかのサービスで PII 対応の機能が追加されても日本向けには使いづらい印象があったのですが、日本向けの機密データ関係がサポートされるの初めてではないでしょうか。いや、あったかな?
今後も Amazon Macie や Glue DataBrew なども含めて日本向けのサポートが追加されていくことを期待したいですね。