2022/07/6

SalesforceでiOSにプッシュ通知を送信するAPNSの認証とは

 
  

SalesforceでiOS端末にプッシュ通知を送信するAPNSとは

Salesforceからのプッシュ通知をiOSで受信する場合には、APNSを利用して送信しなければなりません。Apple社が提供する通知送信サービスであるAPNSについて説明します。

APNSとは

APNS(Apple Push Notification Service)は、Appleデバイスで実行されているアプリケーションに通知を送信するサービスです。Appleデバイスへの通知送信は、必ずAPNSを介して送信されます。バッジ、音、カスタムテキストアラートなどを通知できます。

APNSの認証方式は2通り

APNSでは、アプリケーションのサーバとAPNS間のセキュアな通信を担保するため、証明書または認証キーによって認証されます。 X.509証明書を用いたTLS認証と、JWT(JSON Web Token)を用いたトークン認証の2通りの方式が用意されています。現在は、より新しい方式であるトークン認証が推奨されています。

Salesforceの接続アプリケーションとAPNSの設定

SalesforceでiOSの端末にプッシュ通知を送信するには、APNSと通知送信をサポートする iOS アプリケーションが必要です。 ここでは通知送信するためのAPNSの設定を説明します。

SalesforceでiOSにプッシュ通知送信するには

iOSの端末にプッシュ通知送信する際にサポートする、iOSアプリケーションを開発し、APNSを設定します。 iOSアプリケーションの開発を行う場合は、iOS Developer Program(有償)のメンバーになる必要があります。iOSアプリケーションを開発する際は、以下について理解し、対応を考えておきましょう。 ・APNSは、iOS エミュレータでは動作しません。テスト環境は、iOS 物理デバイスのみとなります。 ・APNSが受け入れても、対象デバイスには到達しない可能性があります。 ・OpenSSL コマンドラインユーティリティ(MacOS X)の設定が必須です。

APNSの設定に必要なアイテムを入手する

iOS プッシュ通知を送信するには、以下のアイテムが必要です。APNSの設定に着手する前に、入手しておくと作業がスムーズになります。署名キーなどのダウンロードは1度限りですので、必ず安全な場所にバックアップを保管してください。 これらはすべて、Apple Developerサイトで作成およびダウンロードできます。Apple DeveloperへのログインにはApp ID が必要です。未登録の場合は、アプリケーション登録をしてApp IDの取得から始めます。 <APNSの設定に必要なアイテム> ・APNS認証トークン署名キー ・APNS認証キーとキー ID ・バンドル ID ・チーム ID

APNSの接続アプリケーションの設定

プッシュ通知を送信するモバイル接続アプリケーションを設定します。モバイル接続アプリケーションは、Salesforce Mobile SDKを使用して作成できます。設定には、準備しておいた署名キーなどを使用します。 <モバイル接続アプリケーションの設定手順> ①[アプリケーションプラットフォーム] → [iOS]を選択する。 ②[プッシュメッセージングの有効化]を選択する。 ③[プラットフォーム] → [Apple]を選択する。 ※プッシュ通知設定での問題を回避するため、必要に応じてバンドルIDを指定する。 ④プッシュ通知を有効にする環境の設定、Apple Developerサイトで取得した、[署名キー]、[キーID]、<[チームID]を入力する。 Salesforceのモバイルアプリケーションでは、トークン、証明書、またはその両方を使用できます。トークンが指定された場合は常にトークンが使用されます。

APNSの変更でSalesforceのプッシュ通知が届かなくなる?!

APNSには認証のための証明書が登録されています。この証明書には有効期限があります。 証明書の有効期限を過ぎてから更新されないと、iOS端末へのプッシュ通知が届かなくなります。

要注意!APNS証明書の有効期限切れ

APNSの証明書が有効期限内に更新されれば問題ないのですが、一旦、証明書の期限が切れてしまうと、証明書の更新を行っただけでは解決しません。すべてのiOS端末に、プロビジョニングプロファイルを再インストールしなければなりません。これは、Apple社の仕様です。 プッシュ通知が届かなくなって業務に影響するだけでなく、余計な作業まで生じてしまいますので、証明書の有効期限には注意しましょう。

2021年3月のAPNSのサービス移行、Salesforceの対応は

Apple社は、APNSの新サービス移行に伴い、2021年3月29日までに、HTTP/2対応のインターフェース向けのルート証明書に更新するよう告知しています。 プッシュ通知の配信エラーを防ぐため、新旧両方のルート証明書を各通知サーバのトラストストアに含まれていることを確認するよう求めています。 Salesforceではこれに先立って、Marketing Cloud MobilePushにおける「.p12 APNs 証明書」のサポートを終了し、「.p8 認証キー」による認証に移行しました。 Salesforceで、iOS 端末にプッシュ通知を送信しているユーザーは、2020年9月までに「.p8 認証キー」のアップロードを求められました。 出典:Apple Push Notificationサービスのサーバ証明書の更新|Apple公式サイト 参照:https://developer.apple.com/jp/news/?id=7gx0a2lp 出典:要アクション: 9 月までに iOS 送信用の MobilePush 認証キーをアップロード|Salesforce公式サイト 参照:https://help.salesforce.com/articleView?id=sf.mc_rn_july_2020_mp_auth_key.htm&type=5

APNSで、SalesforceでiOSにプッシュ通知できる

iOSにプッシュ通知を送信するサービス、APNS について説明しました。 APNSを利用すれば、モバイルの種類を問わず、Salesforceからのプッシュ通知を利用できるようになります。プッシュ通知により、ユーザーの利便性は向上します。その一方、届くはずのプッシュ通知が届かないことで、業務に支障をきたす場合もあります。 APNSは便利なサービスですが、証明書の変更などを適切に対応しなければなりません。安定した運用のため、APNSの機能や認証について正しく理解しておきましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】