個人情報とは、人を特定できる情報
個人情報とは、特定の人について分かる情報のことです。名前やメールアドレスだけでなく、いくつか集めると人が分かる情報も含みます。
どの列が個人情報かを見分けられると、守るべきデータが分かります。守れない列は、そもそも集めないという選び方もできます。
このレッスンのゴール
メモ
表の列を、直接識別子、間接識別子、機微なデータに分けられる。
重要な言葉
| ことば | いみ | れい |
|---|---|---|
| 本人 | そのデータが表している人 | |
| 個人データ | 特定の人について分かるデータ | |
| 直接識別子 | それだけで人が分かる情報 | メールアドレス |
| 間接識別子 | 組み合わせると人が分かる情報 | 郵便番号 |
| 機微なデータ | 漏れると本人が深く傷つく種類の情報 | 病歴 |
学生が入力するセルは、このプレビューでは空白です。
名前やメールは、それだけで人を指す
氏名、メールアドレス、電話番号は、直接識別子です。それ1つで、誰のデータかが分かります。
会員番号や社員番号も同じです。番号だけでは分からないように見えますが、名簿と照らせば本人が分かります。
まずラボで、ショップの顧客の表を見ます。準備の2行を Run してから、列の一覧を出しましょう。
証明書を受け入れる設定
printf '[client]\nssl-verify-server-cert=0\n' > ~/.my.cnfここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
ショップ用の短い名前
alias sql='mariadb -h db -u student -pstudent shop -t -e'ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
顧客の表の列を見る
sql "DESCRIBE customers"ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
組み合わせると人が分かる
都市や生まれた年だけでは、人は決まりません。同じ答えの人が大勢いるからです。
でも、手がかりを重ねると、当てはまる人が減っていきます。最後に1人だけ残れば、その人が特定されます。
このように、重ねると人が分かる手がかりを間接識別子と呼びます。
例: 会員200人のクラブで
| 使った手がかり | 当てはまる会員 | 1人に決まるか |
|---|---|---|
| 女性 | 100人 | 決まらない |
| 女性で1998年生まれ | 8人 | 決まらない |
| 女性で1998年生まれ、郵便番号が 160-0022 | 1人 | 決まる |
学生が入力するセルは、このプレビューでは空白です。
名前のない3列を見る
sql "SELECT first_name, city, joined_on FROM customers ORDER BY id LIMIT 3"ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
試す: 1人に決まる組み合わせ
-- 郵便番号、生まれた年、性別が同じ会員をまとめて数えます。
SELECT postcode, birth_year, gender, COUNT(*) AS people
FROM members
GROUP BY postcode, birth_year, gender
ORDER BY people, postcode;
-- people が 1 の行は、その組み合わせだけで1人に決まります。
試す: 手がかりを減らす
-- 郵便番号と生まれた年の2つだけに減らして、もう一度数えます。
SELECT postcode, birth_year, COUNT(*) AS people
FROM members
GROUP BY postcode, birth_year
ORDER BY people, postcode;
-- people が 1 の行は、いくつ残りましたか。
よくある間違い
注意
名前の列を消せば、個人情報ではなくなると思いがちです。郵便番号、生まれた年、性別が残っていれば、人は特定できます。特定できるかどうかは、列が1つずつではなく、組み合わせで考えます。
機微なデータは特に重い
病気、障害、宗教、労働組合への加入、犯罪の記録などは、機微なデータです。漏れると、差別や嫌がらせにつながるからです。
機微なデータは、ほかの個人データより厳しく扱います。必要がなければ、そもそも集めません。
給与や成績は、法律の分類とは別に、見せる相手を絞るべき情報として扱いましょう。