Apple、macOS 10.15 Catalinaで実行できる野良アプリに必須としていた「公証」の条件を2020年1月まで緩和。

スポンサーリンク

 Apple、macOS 10.15 Catalinaで実行できる野良アプリに必須としていた「公証」の条件を2020年1月まで緩和すると発表しています。詳細は以下から。

macOS 10.15 Catalina

 AppleはWWDC 2018でMac App Store外で配布しているいわゆる「野良アプリ」に対し、Xcodeにレビューなしでアプリ内にマルウェアなどが含まれていない事や改ざんがない事をチェックし承認する公証サービス(Apple Notary Service)を開始し、WWDC 2019では次期macOS 10.15 CatalinaでGatekeeperのブロックなしに実行できるアプリに、この公証を義務付けると発表しましたが、

Advances in macOS Security

We’re expanding on this policy such that all new software requires notarization. And in this case, new means that the software was signed or built after June 1st, 2019. This means that all existing software will continue to pass through Gatekeeper as is, with just a Developer ID certificate signature. But that all new software must be notarized to pass Gatekeeper.

Advances in macOS Securityより

Appleは現地時間2019年09月03日、秋にリリースを予定しているmacOS Catalinaで古いバージョンのアプリを引き続き利用するユーザーが新バージョンのアプリや別のアプリに移行しやすくするために、この公証の前提条件を2020年01月まで緩和すると発表しています。

Notarizing Your Mac Software for macOS Catalina

Mac App Storeの外部で配布されるMacソフトウェアは、macOS Catalinaで実行するためにAppleによる認証が必要であることにご注意ください。移行を簡単にし、古いバージョンのソフトウェアを引き続き使用するmacOS Catalinaのユーザーを保護するために、認証の前提条件を2020年1月までに調整しました。

Notarizing Your Mac Software for macOS Catalina – Apple

 各アプリケーションベンダーやメーカーはmacOS 10.14.5以降でカーネル拡張(kext)にもAppleの公証を通すよう通知され対応を進めてきましたが、これにより未認証のアプリも認証を受けやすくなったので開発者の負担はもちろんユーザーが利用できなくなるアプリも減ると思われます。

公証していないアプリ

Gatekeeperのチェックレベルを下げる必要はあるかもしれません。

 Appleは開発者に対しHardened Runtimeが有効になっていないアプリや開発者IDで署名されていないコンポーネントを含んだアプリ、古いSDKでビルドしたアプリなども公証を取得できるように条件が緩和したと発表しているので、開発者の方はAppleのDeveloperサイトをチェックしてみてください。

公証できる可能になったアプリ

  • Hardened Runtime機能が有効化されていない。
  • Developer IDで署名されていないコンポーネントがある。
  • コード署名証明書にセキュアタイムスタンプが含まれていない。
  • 古いSDKでビルドされている。
  • trueのバリエーションに設定された「com.apple.security.get-task-allow」エンタイトルメントを含んでいる。
公証についてはWWDC 2019のAll About Notarizationで詳しく解説されています。
スポンサーリンク

おまけ

 ユーザーの方はアプリやパッケージが公証されているかを以下のコマンドやSuspicious Package(無料)でチェックすることもできるので、気になるアプリがある方はチェックしてみてください。

AppleのNotarizationを確認するspctlコマンド

spctl --assess --verbose [path-to-app]
spctl --assess --verbose --type install -v [path-to-pkg]