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

ウェブとモバイルのためのIdentity Verificationの設定【非推奨】

セキュリティを強化し、なりすましを防ぐためにIdentity Verificationを設定しましょう。

対応者:Penny Gray

⚠️ Identity Verificationは現在非推奨です

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


ウェブでIdentity Verificationを設定する

インストール方法を選択してください

まず設定 > チャンネル > Messenger > インストールに移動し、Identity VerificationでMessengerを保護するを開きます。

次に、Messengerをどのようにインストールしたか(NPMパッケージか統合か)を選択します。

WordPressまたはShopifyでIntercomをインストールしている場合は、設定なしでIdentity Verificationを強制できます(米国ホストのワークスペースのみ利用可能)。

サーバーでHMACコードを生成する

コードスニペットインストールの場合、ログインしたusersごとにサーバーでHMACを生成し、Intercomに送信する必要があります。

まず、usersを一意に識別する方法をUser IDかEmailで選択します。

注意:

  • 両方をIntercomに送信する場合、User IDが優先されます。

  • 秘密鍵は安全に保管してください!リポジトリやクライアント側コード、第三者が見つけられる場所に直接コミットしないでください。

次に、HMACを生成するために使用しているサーバーサイドの言語やフレームワークを選択します。

サイトを更新してHMACを送信する

usersデータを読み込み、window.intercomSettingsコードスニペットがあるすべての場所に、新しい属性user_hashを追加し、HMACコードを割り当てます。

HMAC値をパラメータとしてIntercom Messengerに送信する更新済みコードスニペットを提供しています。コードをコピーをクリックして使用してください。

インストールを確認する

Identity Verificationを設定し、各usersのuser_hashを送信し始めたら、インストールが期待通りに動作しているか確認してください。

インストールを確認をクリックします。このボタンはMessengerが見つかったドメインの一覧とIdentity Verificationの状態を表示します。緑のチェックは成功、警告の三角は正しいIdentity Verification設定でMessengerが見つからなかったことを示します。

リスト内のすべてのドメインでエラーを解決したことを確認してください。これらはすべてpingを受信したドメインです。

また、ハッシュチェッカーを使ってIntercomに送信しているuser_hash値が正しいか検証できます。ここではuser_idまたはemail(user_idを使っていない場合)に基づく期待されるuser_hashを確認できます。

webでIdentity Verificationを強制するには、すべてのpingリクエストにuser_hashを含める必要があります。

MessengerのIdentity Verificationを強制する

Messengerコードを正しく修正しエラーがなければ、「MessengerのIdentity Verificationを強制する」オプションをオンにしてMessengerのIdentity Verificationを強制するをクリックできます。反映に5〜10秒かかる場合があります。

強制後はuser_hashなしのリクエストは拒否され、Messengerを通じたusersのなりすましを防止します。


モバイルアプリでIdentity Verificationを設定する

ウェブのインストールと同様に、iOS、Android、React Nativeのトグルはモバイル用インストールにあります。

次にIdentity Verificationの秘密鍵を取得し、サーバーの安全な場所に保管します。

秘密鍵はモバイルアプリに保存せず、サーバーがuser_hashのみをモバイルアプリに送信するべきです。

使用しているプラットフォームのモバイルSDKガイドに従ってください。

Messengerがアプリで期待通りに動作することを確認したら、Identity Verificationをオフにして新しいIdentity Verification対応バージョンをApp Storeに公開します。採用率が高まったらIdentity Verificationをオンにし、すべてのアプリバージョンで強制を開始します。

Identity Verificationを有効にすると、有効なuser_hashを送信しない古いバージョンのアプリはIntercomと通信できなくなります。


Identity Verificationをオフにする方法

いつでも設定 > チャンネル > Messenger > インストールに移動し、選択したプラットフォームの「Identity VerificationでMessengerを保護する」の最終ステップで「MessengerのIdentity Verificationを強制」をオフに切り替えられます。開発中に便利です。

Identity Verificationがオフの間はアプリは保護されません。これにより、あるusersが別のusersになりすまして会話を見たり、Intercomのデータを変更したりする可能性があります。


Identity Verificationの秘密鍵をローテーションする方法

ワークスペースからIdentity Verificationの秘密鍵をローテーションできます。手順は以下の通りです。

  1. 必要なチャンネル(Web、Android、iOS、またはすべてのプラットフォーム用の1つの鍵)に新しい秘密鍵を作成します。

2. 次に、新しい秘密鍵をコードに実装し、適切なuser_hashを生成します。

3. 古い秘密鍵を無効化し、新しい秘密鍵を有効化します。

4. ページを更新して新しい秘密鍵を表示します。

5. 新しい秘密鍵が機能しない場合は、Identity Verificationを一度オフにしてから再度オンにする必要があるかもしれません。

6. すべてが期待通りに動作することを確認したら、古い秘密鍵を削除します。

このプロセス中にダウンタイムはありません。

または、当社側でIdentity Verificationの秘密鍵をローテーションすることも可能です。
このローテーションを行うには、直接ご連絡いただき、以下の手順を実行してください。

  1. Intercom内でIdentity Verificationを無効にする(web、iOS、Androidそれぞれ個別に)

  2. 特定の秘密鍵をローテーションします。

  3. ページを更新して新しい秘密鍵を表示します。

  4. 次に、新しい秘密鍵をコードに実装し、適切なuser_hashを生成します。

  5. 最後に、再度Identity Verificationを有効にします。

このプロセス中にダウンタイムはありませんが、手順2〜5の完了中は、エンドusersはIdentity Verificationが有効でない状態でMessengerを使用できます。

Identity Verificationの詳細や、設定に問題がある場合はトラブルシューティングのヒントをご覧ください。


注意:Identity VerificationはJSON Web Tokens(JWTs)を使用した改善機能に置き換えられ、非推奨となりました。

詳細はこちら:

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