先日、ある iOS アプリが Apple Developer Enterprise Program (ADEP) の規約に違反していたため、Apple により削除されました。これは社内向けのアプリを Web サイトから不特定多数に対して配布するという典型的な違反事例でした。
この記事では規約違反を犯したアプリが削除されるまでの経緯と、規約違反にならないためにはどうするべきだったのかを解説します。
Day 1 - 発端
ある日、社内で使用している Slack にメッセージの着信を表すバッジがつきます。
ちょうど作業もひと段落したところだったので、私は着信のあった Slack チャンネルを開いてメッセージを確認します。
エンタープライズ向けアプリを堂々と配布しているサービスがあります
そんなメッセージとともに URL が添付されています。
さっそくその URL を開いてみると、表示されたのはとある海外用 SIM カードの Web サイトでした。サービス内容の説明を読みながら画面をスクロールすると、専用アプリをインストールするためのリンクがあります。
リンクをクリックした私の目に飛び込んできたのは、まさしく社内向けアプリをインストールする手順でした。1 ここまでの時点で、私は認証などを要求されていません。つまり、社内向けアプリを不特定多数のユーザーが自由にインストールできる状態です。
「これは ADEP の規約違反だな...」
そんな風に思いつつも、私はそのまま Webサイトを閉じました。社内 Slack でもこれは規約違反だとみんながレスを返しています。
Day 2 - Appleへの報告
通勤中、電車に揺られながら、私はふと昨日のサービスのことが気になりました。
「そういえばあのサービスは一体いつから始まっているのだろう...」
私は Google に問題のサービスの名称を打ち込み、サービスが7月から開始されていることを知りました。また、SNS を検索すると、多くの人が規約違反という指摘をしています。
「2ヶ月も放置されているのか...」
社内 Slcak でも SNS でも規約違反という指摘をする人はいますが、どうもそれを Apple に報告している人がいないように見えました。
「...とりあえず Apple へ報告してみよう」
そう思った私は Apple のサポートサイトから不正の通知というカテゴリを選び、規約違反ではないかという指摘と、サービスの URL 、アプリの詳細を入力して送信しました。
その日の夕方、早くも返信が来ました。
そこには英語で以下のようなメッセージが書いてありました。
ここ英語しか受け付けてないから、英語で送ってくれないと読めない
...私は英語で書き直し、メッセージに返信しました。2
Day 3 - サービス提供会社との会話
既に Apple へ不正を通知しましたが、あることが気になりました。
規約違反のサービスを提供しているのはそれなりの規模の企業です。
そのような企業がこんなに堂々と規約違反をするでしょうか。
もしかして、Apple から特別な許可をもらって配布しているのではないでしょうか。
そこで、私はサービスを提供する会社に電話で問い合わせてみました。
私「App Store ではなく Web サイトからインストールするようですが、これは Apple の許可を得ているのでしょうか」
サポート「はい、Apple の許可を得て開発したものを配布しています」
...もう少し具体的に聞いてみます。
私「これは社内向けアプリなので Apple との開発者契約に違反していると思うのですが、Apple から許可を得ているのでしょうか」
サポート「...はい、Apple の...その...許可をされたもので開発して...配布しています」
...なぜか回答がかなり曖昧ですが、どうも 「Apple から許可を受けている」というスタンスで押し通すつもりのようです。
電話口の方は詳しい方ではなく、他の方から聞いた回答をそのまま伝えているだけなのでこれ以上の会話は意味がなさそうです。
Day 3 - Apple Support とのチャット
そこで、私はサービス提供会社から伺った答えが正しいものかどうかを、Apple に確認することにしました。Apple サポートにアクセスし、お手軽そうだったのでチャットでのサポートを選択します。
「2分ほどで接続します」という画面を見つめたまま5分ほど待った頃でしょうか、チャットが接続され 会話が始まりました。
...
...
30分ほど会話したのですが、どうもこちらの話が上手く通じません。
向こうも同じことを感じたのか、そろそろ終了しようという雰囲気になり一言、
こちら修理窓口となっておりますため、ご要望にしっかりとお答えできていないと感じております
おぉ、なんということでしょう!
できれば、それを一番最初に言ってくだされば良かったのですが......
電話であれば知識のあるスペシャリスト部署へ繋ぐことも可能とのことなので、電話をすることにしました。
Day 3 - Apple Support との電話
チャットで教えていただいた電話番号へ発信します。
特別な番号ではなく、公式サイトにも記載されている電話番号でした。
しばらく待つと、受付の方につながりました。
私「AppStore 以外から配布されているアプリが Apple の許諾を得ているかどうかを確認したいです」
その後、サポート部門の方に繋がりました。
先ほどの質問を告げ、より詳細な状況を説明します。
しばらく会話したのですが、結論が出ず、より詳しい部門に繋げてもらえることになりました。
5分ほど待ち、
次の方に同じように質問と状況を説明します。
しかし、やはり結論が出ず、さらに詳しい部門に繋げてもらえることになりました。
10分ほど待ち、
ついに「スペシャリスト」3 の肩書きを持つ、最も詳しいという方に繋げてもらえました。
今回も同じように質問と状況を繰り返し説明すると、問題の Web サイトを確認し、Apple のエンジニアの方にも確認を取ってくださいました。
ただし、その回答は驚くべきものでした・・・
私「(問題の Web サイトについて)これは開発者契約の規約に違反しているのではないでしょうか?」
Apple「問題のサイトからアプリをダウンロードして確かめましたが、問題はありませんでした。」
私「それは規約違反ではないという意味でしょうか?」
Apple「はい、そうなります。」
私「これは社内用アプリを組織外に配布しているのではないでしょうか?」
Apple「はい、ですが、規約上問題はありません。」
私「?!」
私「...ADEPの規約には組織内という文言がありますから、このような組織外の不特定多数のユーザーへの配布はできないのではないでしょうか?」
Apple「いえ、今回の配布は規約には違反していません。」
私「?!」
私「確認ですが、アプリを利用するユーザー側の話ではなく、提供する開発者側がADEPの利用規約に違反していないということでしょうか?」
Apple「はい。」
私「再度確認させて頂きたいのですが、ADEPで署名された社内向けアプリを、Web サイトなどから不特定多数の組織外のユーザーに対して配布しても、ADEPの規約違反とはならないということでしょうか。」
Apple「はい、そのような配布を行っても、規約違反にはなりません。Apple側でそれを規制するような規約はありません。」
私「?!!!!」
私「・・・ありがとうございました」
混乱したまま私は電話を終えました。
私たちが規約違反と信じていたことは誤りだったのでしょうか。
Day 4 - 規約違反の末に
...やはり信じられません。
そもそも問い合わせ先がいけなかったのではないか。
そう思った私は Apple サポートから別のカテゴリーを選択し、先日のスペシャリストの回答が正しいものかどうかを問い合わせました。
その日の午後、社内 Slack に再び着信バッジがつきました。
例のアプリに何か動きがあったのかもしれません
ハッとした私はサービス提供者のWebサイトを開きます。
そこには iOS アプリが使用できない状況になっているというお知らせが記載されています。
ダウンロードしておいたアプリを確認すると、証明書が無効化され、インストールも起動もできなくなっていました。これは Apple が規約違反に対して処罰したものと考えて間違いないでしょう。
また、問い合わせていた件についても Apple から連絡が来ました。
Apple Developer Enterprise Program で開発・署名したアプリを、組織外のユーザーに配布することは規約違反となるはずです
昨日の会話はなんだったのでしょうか。
やはり長年信じていた通り、規約違反になるようです。
まとめ
Apple に不正を報告しても処罰の有無は公表してくれません。しかし、私の報告がきっかけとなったのか、以前にも Apple に不正の報告が寄せられていたのかは不明ですが、Apple は規約違反のアプリを使用できないようにしました。
以前から今回のような事例が ADEP の規約違反に該当することは多くの開発者により指摘されてきました。日本において実際にアプリ削除まで至ったケースは珍しいのではないでしょうか。今回処罰を受けたサービス提供者は iOS アプリの配布を諦め、別のサービス提供方法を模索しているようです。
そもそも規約違反をせずにアプリを配布するにはどうすればよかったのでしょうか。
規約違反をすることなく、不特定多数のユーザーにアプリを配布する場合は App Store にアプリを登録するのが最も適切な方法です。Apple の審査や App Store の仕組みが配布したいアプリにとって不都合だったとしても、規約違反をしてアプリを配布することは絶対に避けるべきです。
また、組織内に配布する場合も、配布サイトに認証をかけるなど不特定多数が容易にダウンロードできることがないようにしなければいけません。検索エンジンを使用すると、今回のアプリと同様に Web サイト上から社内用アプリを配布しているサイトも見受けられます。意図したものであればすぐに配布を取りやめるべきです。意図せず公開しているのであればすぐに設定を変更し、規約違反とならないように努めなければいけません。