【6/30まで】iOSの「アカウント(データ)削除機能」の検討進んでますか?

…進んでないですよね。

と言うことで、2021年末から改正個人情報保護法対応と併せて頭を悩ませてきた「App Store Reviewガイドライン」について書いていきます。

1.App Store Reviewガイドラインとは

(1)位置付け

皆さんご存知の通り、スマートフォンアプリの大部分はapple/googleと言う2大プラットフォーマーのアプリストアを通じて提供されています。

アプリの提供者は、アプリストアを利用するに際してapple/googleとの間で契約を結ぶ必要があり、当該契約で定められたルール(以下、総称してデベロッパー規約と言います)に拘束されます。このルールの一つがApp Store Reviewガイドラインです。

App Store Reviewガイドラインに違反すると、場合によっては提供しているアプリがbanを喰らうことになります。

(2)参考資料

デベロッパー規約を取り上げてくれている書籍としてぱっと思いつくものとしては以下があります。

また、今年初めには杉浦先生がデベロッパー規約についてのセミナーもされていました。

ただ、デベロッパー規約は他の法領域に比べて参考になる資料が明らかに少ないですよね。これはデベロッパー規約が私企業の規約でしかないことが原因だとは思うのですが、実際の影響力という意味ではもっと参考になる情報があって良い領域だとは思っています。

(3)担当部署

企業でデベロッパー規約を回していく上では「法律」「技術」「実務」のいずれも大切で、正直どこの部署も真正面からは受け持ちたくなく、非常にポテンヒットになりやすい領域だと思っています。ベン図の3つ重なる部分を積極的に取りにいきたくない気持ちはわかります。

実際の担当部署としては

  • 法務
  • 法務内の専門担当部署
  • 事業部門
  • システム部門
  • セキュリティ部門
  • 特段いない

みたいなパターンを自分は見たことがあります。

2.「アカウント(データ)削除機能」

では今回のテーマであるアカウント(データ)削除機能の話に入っていきます。

(1)該当箇所

具体的には、App Store Reviewガイドライン5.1.1(v)の以下の記載が該当します。

アカウントの作成に対応したAppの場合は、App内でアカウントの削除もできるようにする必要があります。

出典:App Store Reviewガイドライン

これだけだとちょっと分かりにくいですが、Appleは今日までの間に何度もリリースを出して注意喚起&情報補足を行ってきました。

(2)要求事項

上記リリースを通じて徐々に詳細化されていった経緯があるので、一番新しい5/24のものから詳細な要求事項を引用します。これの対応期限が2022/06/30なわけです。

  • App内のわかりやすい場所にアカウント削除オプションを配置すること。
  • Appleでサインインに対応したAppでは、AppleでサインインのREST APIを使用して、アカウントの削除時にユーザーのトークンを無効化する必要があること。
  • アカウントを一時的に停止または無効化する機能だけでは要件を満たさず、不十分であること。アカウントと一緒に、個人に紐づくデータも削除できる必要があること。
  • 規制が厳しい分野に関わるAppでは、アカウント削除プロセスの実施や確認のために追加的なカスタマーサービスの提供が必要なケースがあること。
  • ユーザーアカウント情報の保存と保管、およびアカウント削除の処理に関しては、適用される法的要件に従うこと。これには、国や地域によって異なる法令の遵守も含まれるため、常に法務担当者に確認する必要があります。

(3)悩みどころ

今までに相談を受けて検討してきた論点を取り上げます。現時点での私の結論は示してみますが、(ご存知の通り)Apple様のご判断次第ですので何かを保証するものでは当然ありません。また、当然反対意見もありうる所だと思っています。

・悩みどころ1

削除対象は「収集」つまりユーザーが主体的に登録したデータのみであり、App側で独自に付与したデータは対象外とできないか?

これは最初のリリースで「Appで収集されるデータの種類、Appによるデータの収集方法、収集されたデータの全使用を網羅する情報」と、”収集”という言葉がフォーカスされていたため検討しました。

が、世界的なパーソナルデータについての考え方にも反しますし、その後のリリースで「個人に紐づくデータも削除できる必要があること。」といった表現に変更されたので、紐づくデータは全て対象と考える他なさそうです。

・悩みどころ2

Web等でのアカウント作成プロセスが存在しており、アプリ単独での直接的なアカウント作成機能がない場合スコープ外とすることはできないか?

これはリリースにおける「アカウント作成に対応しているすべてのAppを対象に」という文言に起因します。

アプリを起動してもすぐWebに飛ばしてしまうようなタイプのアプリなら、banを食らった場合のリスクが相対的に低いことも踏まえて一旦これで戦ってみるのはアリなのかもしれません。

他方で、アプリで独立して一定の機能を提供している場合、これをスコープ外というのは中々難しいかなと思っています。日々の利用シーンではアプリで操作が完結するのにも関わらず、削除はWebなど別のプロセスを踏まなければいけないというのは前回検討したダークパターン的な観点からも良くないと思っています。

・悩みどころ3

個別の日本法で保存が要求されている場合でも、データは削除しなければならないのか?

これはNoだと考えて良さそうです。

「ユーザーアカウント情報の保存と保管に関しては、適用される法的要件に従うこと。」との文言があります。

・悩みどころ4

物理削除が必要か、論理削除で良いか?

これも非常によく出てくる話です。

App Store Reviewガイドラインには論理削除的なことへの言及も無いですし、べき論としては当然物理削除が必要だと考えるべきだと思います。Q&Aにも以下のような記載があり、Appleとして認める水準での削除が要求されています。

I currently allow account deletion in compliance with CCPA, GDPR, or other local laws in some of the locations where my app is available. Is this sufficient?

No. All users should be allowed to delete their accounts, regardless of where they’re located. The existing account deletion flows you’ve created to comply with local legal requirements may be made available to all users, as long as they meet the requirements of App Store Review Guideline 5.1.1(v).

他方で、↑の「適用される法的用件」として日本の個人情報保護法ガイドラインの以下文言を引用してひとまず論理削除(非物理削除)で戦ってみるのはひとつの方法だとは思います。

「個人データの消去」とは、当該個人データを個人データとして使えなくすることであり、当該データを削除することのほか、当該データから特定の個人を識別できないようにすること等を含む。

出典:個人情報の保護に関する法律についてのガイドライン(通則編)

 

他方で、各人の使う「論理削除」という言葉の曖昧さ・スコープの違いには注意が必要だと以前から感じていました。各話者に最低限共通している部分としては、「全データを実際に削除はしない」ということだと思います。

しかし

  • 名前と住所くらいを消せば良い
  • IDをダミー値にすれば良い

など、各人の想定している論理削除は様々です。「日本法では許されているから」というロジックで戦うのであれば、少なくともそれらがそもそも日本法における消去の要件を満たしているかという点はクリアしておきましょう。

・悩みどころ5

分析環境(HDFSとか)ってユーザー単位での削除とかちょっと無理なんだけど…

私もエンジニアの皆さんと議論し、色々と悩んだところです。

本番環境のデータはRDBで管理されていることが多く、ユーザー単位での削除が可能です。他方で分析環境のデータはそうではないことがあり、ユーザー単位での個別削除が(かかるコスト的な所含めて)困難な場合も多いです。

この辺り、Yahooさんなどは以下のような記事も書かれていますので、問題意識含めて参考になると思います。

techblog.yahoo.co.jp

実際の対処法は大きく2つ考えているのですが、ブログで不特定多数に発信する段階にないのでまたの機会に。

3.まとめ

以上です。

正直この辺りを完璧に対応できているケースというのはあまり見ないので、実際にすべての Appが即banをされるということはなさそうではあります。

が「リスクとして認識した上での受容」と「未認識」ではいざという時の対応に大きな差があるので、自社としての対応方針くらいはきちんと検討しておくのが良いと思います。