iPadOS14ではTLS1.2に対応したwebページでなければipaのインストールができないかもしれません
今回発生した問題
「iPadOS 14でwebブラウザからipaファイルをインストールできなくなった」という問題が起きました。
具体的には
<a href="itms-services://?action=download-manifest&url=https://example.com/huga/hige/foobar.plist">ダウンロード</a>
というaタグが記述してあるhtmlを表示し、リンクを押した時にipaファイルをインストールできないというものです。
現状確認と現状分析
早速現状の確認をしましたが、iPadOS 14で「インストールできません」というダイアログが表示されます。
また、ホーム画面ではグレーアウトされたアプリアイコンが表示されているままで、何も起こりません。
iPadOS 13でも同じ問題が発生しているのかと思いましたが、iPadOS 13では問題なくインストールが完了しインストールしたアプリの起動もできます。
iPadOS 13でインストールが可能でiPadOS 14ではインストールが不可能ということは、iPadOS 14で何らかの変更が入ったということになります。
ドキュメントを参照したり、同じような現象に当たった人がいないか検索して情報を探しました。
しかし、有力な情報は見つかりませんでした。
調査中に、社内から「別の環境ではiPadOS 14でもwebブラウザからインストールできている」という話が出ました。
iPadOS 14でインストールできる環境とできない環境が社内に揃っているので、それらを比較して手がかりを探してみます。
解決策の検討
というわけで、webブラウザからipaファイルをインストールできる環境とできない環境を比較してみました。
比較してみた結果、「SSL認証を行っているサーバで、TLS1.2を有効にしているかどうか」が原因ではないかと推測しました。
そこでipaファイルをインストールできないサーバにTLS1.2を設定してみたところ、webブラウザからipaのインストールができるようになりました。
結論
「iPadOS 14でwebブラウザからipaファイルをインストールできなくなった」への対処方法の一つは、「SSL認証を行っているサーバにTLS1.2を設定する」です。
iPadOS 14からTLS1.2に対応していなければインストールさせないという変更が追加されたのかもしれません。
同じ問題に当たった方は、ぜひご参考にしていただければと思います。
参考情報
2018年にSafariからTLS 1.0と1.1のサイトにはアクセスさせないというニュースが出ていました。