APNs認証キーの新機能について
はじめに
先日Appleからこの様なお知らせがあり、APNs認証キーの新たな設定オプションが追加されていたので、Apple Developerでキーの作成を試しながら変更点を整理しました。
変更点
キーを使用できる環境を細かく制限できる様になった
APNs認証キーの作成時に、新たに追加された以下の項目を指定することで、キーの使用が許可される環境をより細かく制限出来る様になりました。
-
Environment
- ドキュメントではチームスコープキーと呼ばれている。
- EnvironmentはApple Developer上の表記。
-
Sandbox
/Production
/Sandbox&Production
の3種類から選択可能。- 以前はキーの使用を特定の環境に制限することは出来なかった。
- ドキュメントではチームスコープキーと呼ばれている。
-
Key Restriction
- ドキュメントではトピック固有キーと呼ばれている。
- Key RestrictionはApple Developer上の表記。
-
Team Scoped(All Topics)
/Topic Specific
の2種類から選択可能。-
Topic Specific
を選択すると、具体的なBundle IDを選択して特定のアプリでのみ使用できるキーを作成可能。 - 以前はアプリ毎に使用するキーを制限することが出来なかった。
-
- ドキュメントではトピック固有キーと呼ばれている。
キーの作成数の上限が増えた
これまではAPNs認証キーはApple Developerアカウントにつき2つまでしか作成できないという制限がありましたが、この制限についても変更されており、作成可能なキー数の上限が増えています。具体的な上限についてはこちらに記載されています。
Apple Developerでの設定
Apple Developerでこれらの設定を追加する方法を紹介します。
APNs認証キーを作成する時に、Configure
というボタンが表示される様になりました。
Configure
を押すと以下の画面に遷移します。ここで先ほど紹介したEnvironment
とKey Restriction
をそれぞれ指定できます。
Key Restriction
をTopic Specific
にすると、以下の様にTopicを追加できる様になります。キーの使用を特定のアプリに制限したい場合は、ここでBundle IDを指定できます。
作成済みのキーの扱いについて
この機能が登場する前に作成していたAPNs認証キーについては、これまでと同じ挙動になり、EnvironmentにはSandbox&Production
、Key RestrictionはTeam Scoped(All Topics)
として設定されます。
既存のキーに対してはEdit
ボタンが表示されて値が変更できそうに見えますが、作成済みのキーに対してEnvironmentやKey Restrictionの設定を変更することは出来ません。 スコープを変更したい場合は新たにキーを作り直す必要がある為、注意が必要です。
さいごに
APNs認証キーの新機能について整理しました。ドキュメントやApple Developerを操作しながら確認しましたが、もし間違っている点や気になる箇所等があれば、コメントをいただけると幸いです。
参考
Discussion