Upgrade to Pro — share decks privately, control downloads, hide ads and more …

僕たちが 『Appのプライバシーに関する質問への回答』 そして『ATT』に対応するまでの物語 / iOSDC Japan 2021

3bf6da1f63cd8b7a2f802f95c269ed80?s=47 FromAtom
September 18, 2021

僕たちが 『Appのプライバシーに関する質問への回答』 そして『ATT』に対応するまでの物語 / iOSDC Japan 2021

iOSDC Japan 2021 Day1 09/18 15:50〜 Track D

プロポーザル:https://fortee.jp/iosdc-japan-2021/proposal/cb27f5b5-dd66-47ee-a224-afcc97d979b6

3bf6da1f63cd8b7a2f802f95c269ed80?s=128

FromAtom

September 18, 2021
Tweet

Transcript

  1. 僕たちが 『Appのプライバシーに関する質問への回答』 そして『ATT』に対応するまでの物語 iOSDC Japan 2021 2021/09/18 15:50〜 Track D

    pixiv.inc @FromAtom
  2. • pixiv Sketch / pixiv Sketch LIVE • アプリ分野テックリードしています •

    好きなSwiftは guard @FromAtom
  3. このトークで話さないこと このSDKを使っている場合は、こういう回答が正解 🚫 ATTモーダルの実装方法や、許可されやすいノウハウ 🚫 ATTに対応したデータ基盤の設計 🚫

  4. アジェンダ App StoreでのAppのプライバシーに関する詳細情報の表示 編 AppTrackingTransparency 編

  5. App Storeでの Appのプライバシーに関する 詳細情報の表示 編

  6. 長いので今日は 「Appプライバシー表示」 と呼びます。

  7. Appプライバシー表示 • アプリが収集しているデータの種類 • そのデータの利用目的 • そのデータは個人に紐づくか • そのデータをトラッキングに利用するか 画像引用:https://developer.apple.com/jp/app-store/app-privacy-details/

  8. データの種類|32種類 • おおよその位置情報 • 機密情報 • 連絡先 • Eメールまたはテキストメッセージ •

    写真またはビデオ • オーディオデータ • ゲームプレイコンテンツ • カスタマーサポート • その他のユーザーコンテンツ • 閲覧履歴 • 検索履歴 • ユーザーID • デバイスID • 購入履歴 • App内の操作 • 広告データ • その他の使用状況データ • クラッシュデータ • パフォーマンスデータ • その他の診断データ • その他の種類のデータ • 名前 • メールアドレス • 電話番号 • 物理的な住所 • ユーザーのその他の連絡先情報 • 健康 • フィットネス • 支払情報 • クレジット情報 • その他の財務情報 • 詳細な位置情報
  9. データの使用目的 • サードパーティ広告 • デベロッパの広告やマーケティング • アナリティクス • 製品のパーソナライズ •

    Appの機能 • その他の目的
  10. ユーザーに紐付けられるデータ • 各種データがユーザーの識別情報に紐付けられているか • 識別情報の非識別化や匿名化を実施している場合は除く • サービスのIDに紐づく事が多いので、当てはまることが多い

  11. トラッキング • Appで収集したデータを使用してトラッキングしてるか • 対象は自分もしくはサードパーティ ‣ 自分がしてなくてもサードパーティがトラッキングしてたら該当 ‣ 広告SDK・広告効果測定SDKなどが該当しやすい

  12. 実際の流れ|メールアドレス データを収集しているか調べる

  13. 実際の流れ|メールアドレス データを収集しているか調べる 利用目的を調べる

  14. 実際の流れ|メールアドレス データを収集しているか調べる 利用目的を調べる 個人に紐付くか調べる

  15. 実際の流れ|メールアドレス データを収集しているか調べる 利用目的を調べる 個人に紐付くか調べる トラッキングに利用するか調べる

  16. 実際の流れ|メールアドレス データを収集しているか調べる 利用目的を調べる 個人に紐付くか調べる トラッキングに利用するか調べる • おおよその位置情報 • 機密情報 •

    連絡先 • Eメールまたはテキストメッセージ • 写真またはビデオ • オーディオデータ • ゲームプレイコンテンツ • カスタマーサポート • その他のユーザーコンテンツ • 閲覧履歴 • 検索履歴 • ユーザーID • デバイスID • 購入履歴 • App内の操作 • 広告データ • その他の使用状況データ • クラッシュデータ • パフォーマンスデータ • その他の診断データ • その他の種類のデータ • 名前 • メールアドレス • 電話番号 • 物理的な住所 • ユーザーのその他の連絡先情報 • 健康 • フィットネス • 支払情報 • クレジット情報 • その他の財務情報 • 詳細な位置情報
  17. 各アプリチームで調査お願いしますー。

  18. 各アプリチームで調査お願いしますー。 サーバサイドのログ収集も含まれますか?

  19. 各アプリチームで調査お願いしますー。 サーバサイドのログ収集も含まれますか? 収集したデータを別チームが使ってる場合はどうなります?

  20. 各アプリチームで調査お願いしますー。 サーバサイドのログ収集も含まれますか? あ、これ実は大変なやつだ 収集したデータを別チームが使ってる場合はどうなります?

  21. Icons made by Pixel perfect from www.flaticon.com

  22. Icons made by Pixel perfect from www.flaticon.com

  23. Icons made by Pixel perfect from www.flaticon.com

  24. Icons made by Pixel perfect from www.flaticon.com BigQuery

  25. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  26. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析 ※個人情報は分離
  27. 課題 アプリエンジニアだけでは収集されるデータを把握できない 🤨 誰でもデータ分析可能なため、利用用途が簡単に網羅できない 🤨 データの流れを完璧に把握した超人はいない 🤨

  28. 困ったらCTOに聞こう 💡

  29. どうしたらいいもんですかね

  30. どうしたらいいもんですかね CTO 地道に調べるしか無いですね

  31. どうしたらいいもんですかね CTO 地道に調べるしか無いですね ですよねー

  32. 銀の弾丸はないのだ 🔫

  33. 調査手順 収集されるデータを調べる 🔍 データの利用用途を調べる 🔍

  34. 収集されるデータを調べる 🔍 • アプリサイドで送信しているデータを洗い出す ‣ アプリエンジニアに調査依頼 ‣ 利用SDKや通信を洗い出す 
 •

    サーバサイドで収集しているデータを洗い出す ‣ CTOとデータ基盤の担当者に調査依頼 ‣ BigQueryやLookerに集約しているデータを洗い出す
  35. データの利用用途を調べる 🔍 • CTO、データ基盤の担当者と調査 • BigQuery、Lookerの利用チームや権限範囲を調査 ‣ 利用しているチームにヒアリング • 弊社サービスのプライバシーポリシーも利用

  36. CTO このトラッキングというのは?

  37. 広告や広告効果測定に使ってるかどうかですね。 CTO このトラッキングというのは?

  38. 広告や広告効果測定に使ってるかどうかですね。 CTO このトラッキングというのは? CTO なるほど。

  39. 広告や広告効果測定に使ってるかどうかですね。 CTO このトラッキングというのは? CTO 自社の広告で使いそうなデータはチェック入れときましょう。 なるほど。

  40. 広告や広告効果測定に使ってるかどうかですね。 CTO このトラッキングというのは? CTO 自社の広告で使いそうなデータはチェック入れときましょう。 なるほど。

  41. 一ヶ月ほどかけて無事に調査完了 ☺

  42. AppTrackingTransparency 編

  43. AppTrackingTransparency (ATT) • 下記をする時にユーザーの許可が必要 ‣ 広告識別子を取得する ‣ ユーザーをトラッキングする 引用:https://developer.apple.com/jp/app-store/user-privacy-and-data-use/

  44. ATTによって広告識別子(IDFA)が取れなくなるよ! 📰

  45. ほーん、なるほどな。 ATTによって広告識別子(IDFA)が取れなくなるよ! 📰

  46. ほーん、なるほどな。 広告識別子を利用しているチームは、ATT対応お願いします。 ATTによって広告識別子(IDFA)が取れなくなるよ! 📰

  47. ATT対応(だとおもってたもの)完了 広告SDK・広告効果測定SDKの更新 😌 ATT Frameworkでのアラート実装 😌 iOS 14.5リリース時には心穏やかにリリース見守り 😌

  48. iOS 14.5リリースから一ヶ月後 📆

  49. トラッキング目的でデータ収集してるのに、 
 許可モーダル出してないからリジェクトです。

  50. このアプリ、広告識別子使って無いのに、どういう事? トラッキング目的でデータ収集してるのに、 
 許可モーダル出してないからリジェクトです。

  51. ATT Frameworkで許可が必要な場合 広告識別子を取得する ユーザーをトラッキングする 1 2

  52. 広告識別子を取得する • 許可モーダルでユーザーが許可すると広告識別子が取得可能 • 広告識別子の利用目的がトラッキングかどうかは別 1

  53. • Appのプライバシー表記で「トラッキング」にチェックをいれたデータ • データの収集自体はATT関係なくしてもよい • ユーザーが許可してないデータのトラッキング利用は禁止 ユーザーをトラッキングする 2

  54. リジェクトされたアプリの場合 • 広告SDKや広告効果測定SDKは未使用 • 自社広告で利用しそうなデータの「トラッキング」をチェック

  55. リジェクトされたアプリの場合 • 広告SDKや広告効果測定SDKは未使用 • 自社広告で利用しそうなデータの「トラッキング」をチェック このデータ取得時にATTで許可モーダルを出す必要がある

  56. リジェクトされたアプリの場合 • 広告SDKや広告効果測定SDKは未使用 • 自社広告で利用しそうなデータの「トラッキング」をチェック このデータ取得時にATTで許可モーダルを出す必要がある やっちまったぜ

  57. モーダル実装して、ATTで許可されたデータだけ使おう 😊

  58. これが分かると良い • iOSアプリで収集されたか • 収集されたデバイスはiOS14.5以降 or 未満 • 許可モーダルのステータスは許可, 未許可,

    拒否のどれか
  59. これが分かると良い • iOSアプリで収集されたか • 収集されたデバイスはiOS14.5以降 or 未満 • 許可モーダルのステータスは許可, 未許可,

    拒否のどれか iOSアプリで収集された全てのデータにATT許諾ステータスを付与
  60. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  61. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  62. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  63. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  64. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析
  65. Icons made by Pixel perfect from www.flaticon.com BigQuery 広告 レコメンド

    分析 時間がかかりすぎる
  66. どうしよう 😰

  67. どうしよう 😰 自社の広告で使いそうなデータはチェック入れときましょう。

  68. Appleのトラッキング定義を確認 🥸

  69. 「トラッキング」とは、 
 ターゲット広告や広告効果測定を目的として、 
 Appで収集した特定のエンドユーザーまたはデバイスに関するデータ (ユーザーID、デバイスID、プロファイルなど)を 
 サードパーティのデータと紐付ける行為や、 
 Appで収集した特定のエンドユーザーまたはデバイスに関するデータを

    
 データブローカーに渡す行為を指します。
  70. 自社 サードパーティ

  71. 自社 サードパーティ

  72. 自社 サードパーティ

  73. 自社 サードパーティ これを広告・広告効果測定 で利用するとトラッキング

  74. 自社 これはトラッキングじゃない

  75. サードパーティ これはサードパーティによる

  76. あれ?自社広告ってトラッキングじゃないのでは? 🤔

  77. 調査手順 アプリが利用するサードパーティライブラリを調査 🔍 トラッキングに該当する利用法があるか調査 🔍

  78. アプリが利用するサードパーティライブラリを調査 🔍 • 広告・広告効果測定に限定せず全てを調査 • 公式ドキュメントを読む ‣ 多くの場合、ATT対応に関するヘルプが用意されている • 問い合わせする

    • ウェビナーに参加する
  79. トラッキングに該当する利用法があるか調査 🔍 • CTO、データ基盤の人、広告チームに協力依頼 • 下記のようなデータ利用をしてないか調査 ‣ サードパーティの広告効果測定データを社内データと紐付ける ‣ 社内の広告の効果測定結果を社外のデータに紐付ける

    ‣ 社内データを利用して、サードパーティで広告を出す ‣ サードパーティで収集されたデータを利用して、自社で広告を出す
  80. 調査結果 トラッキングに該当するサードパーティデータとの紐付けはなかった ✅ 自社の広告は自社で収集したデータのみ活用していた ✅ リジェクト理由になったデータは実はトラッキング利用ではなかった ✅

  81. Appプライバシー表記を修正すれば大丈夫そう! 🎉

  82. リジェクトされたアプリの対応 Appプライバシー表記を修正 レビュアーにAppプライバシー表記を修正した旨を連絡 審査通過! 🎉

  83. 社内への情報共有 • ドキュメントの作成 ‣ Appプライバシー表記とATTについて解説 ‣ 注意すべきデータの利用方法を解説 • 全社に向けて周知 •

    広告関係のチームには重点的に説明
  84. 今後の課題 • 様々な状態を考慮したデータ基盤への改修 ‣ ATT以外にもデータのステータスはドンドン増える ‣ データ利用するたびに相談していてはスピードが落ちる

  85. こうして無事にAppプライバシー表記と ATT対応が終わりました 🥰

  86. 次回

  87. New safety section in Google Play

  88. まとめ • Appleの公式資料はちゃんと読みましょう ‣ 複数回読み直すとわかり始めます • 特にATTは難しいので、調査やお問い合わせを駆使しましょう • データ基盤を作るときは様々なデータのステータスを考慮すると吉