メインコンテンツにスキップ

本人確認のトラブルシューティング【廃止予定】

対応者:Penny Gray

⚠️ 本人確認は現在廃止予定です

本人確認は引き続きサポートされ動作しますが、インストールや変更を検討している場合は、JSON Web Tokensを使用してMessengerを保護する方法への移行を強くお勧めします。

本人確認はIntercom Messengerのセキュリティ機能で、usersとのプライベートな会話を保護しなりすましを防止します。本記事は本人確認のトラブルシューティングと最新のセキュリティ方法への移行ガイドです。

本人確認の設定に問題がある場合、原因は2つあります:usersのMessenger APIリクエストにuser hashが欠落しているか、user hashは提供されているがIntercomの期待するものと異なる

まずブラウザのコンソールを確認すると、例えば403権限エラーなど具体的な問題が表示されます。

ブラウザコンソールの開き方はこちらをご覧ください:Messengerが見えない場合|エラー確認方法

この場合、本人確認が強制されていますが、ログイン中のusersのMessenger APIにuser hashが送信されていません。これによりMessengerは起動しません。

同様にモバイルでは、統合が「本人確認チェックに失敗しました」とIDEにエラー表示されます。

重要:エラーを解決せずに本人確認を強制すると、Messengerを設置したドメインで正しく読み込まれません。

ハッシュが欠落しています

ハッシュ欠落のエラーがある場合は、ワークスペース設定の本人確認シークレットとusersの識別子(user_idまたはemail)を使ってハッシュを生成し、すべてのusersリクエストに含める必要があります。

本人確認の設定にはIntercom Messengerの技術的な変更が必要で、多くの場合サーバー側コードへのアクセスが必要です。これは元々Intercomワークスペースを設定した担当者が行えます。

user_idでハッシュを生成する場合は、すべてのリクエストに関連するuser_idを送信する必要があります。

無効なハッシュ

ハッシュを送信しているのにIntercomが無効と判断する場合、以下を確認してください:

正しい本人確認シークレットを使用していますか?

  • 各プラットフォーム(Web、iOS、Android)には固有のシークレットがあり、Intercom設定で提供されたものを使用する必要があります。独自に作成したものは機能しません。

  • APIキーやアプリクライアントシークレットを使ってハッシュを作成することはできません。アプリクライアントシークレットを使うと無効なuser_hashエラーになります。本人確認シークレットキーはもはや公開されていません。Messengerの保護にはJWTが推奨されています。JWT設定ガイドをご覧ください。

  • [TEST]ワークスペースと本番ワークスペースはそれぞれ固有の本人確認シークレットを持つため、別々に設定する必要があります。

user hashと共に関連するusers識別子を送信していますか?

user hashだけを送信すると本人確認チェックは失敗します。ハッシュ化した識別子(user_idまたはemail)もリクエストに含める必要があります。

正しいusers識別子(user IDかemail)でハッシュを生成していますか?

  • user_idとemailの両方を送信する場合は、user_idでuser_hashを生成してください

  • user_idのみを送信する場合は、user_idでuser_hashを生成してください

  • emailのみを送信する場合は、emailでuser_hashを生成してください

ハッシュはセキュリティ設定のシークレットキー下のハッシュチェッカーで確認してください。

“user_hash”というキーでハッシュ値を送信しましたか?

生成したハッシュはJavascriptスニペットと共に“user_hash”として送信してください。他の名前(例:“android_user_hash”)は使えません。

コードは最新バージョンですか?

古いアプリやJavaScriptコードがキャッシュされている場合、usersデータにuser hashが含まれずMessengerが読み込まれないことがあります。

本人確認で問題が続く場合はMessenger経由でサポートチームにお問い合わせください。問題のあるusersのサンプルとコンソールのエラーを添えてご連絡ください。


注意:本人確認はJSON web tokens(JWT)を使った改善機能に置き換えられました。『Messengerの本人確認を強制』オプションは変更や新規インストールで利用できません。現在の実装は動作しますが、より安全で準拠性の高いJWTへの移行を強く推奨します。

Messengerの保護にはJWT(JSON Web Token)が推奨されています。以下のガイドをご覧ください:

こちらの回答で解決しましたか?