Notiondesk Messenger を信頼できるドメインに制限する
信頼済みドメインを使用すると、どの Web サイトが Notiondesk Messenger を読み込むことを許可するかを制御できます。
信頼済みドメインが設定されている場合、Messengerは承認されたドメインでのみ動作します。他のWebサイトから同じMessengerを読み込もうとするとブロックされます。
管理していないウェブサイトにメッセンジャーが埋め込まれたり再利用されたりするのを防ぎたい場合は、信頼できるドメインを使用してください。
信頼できるドメインを使用するタイミング
信頼済みドメインは、次のような場合に役立ちます。
- Messengerは、本番環境のウェブサイトにのみ表示されるべきです。
- MessengerはプライベートなWebアプリケーション内にインストールされています
- 本番環境とステージング環境は別々に用意されています。
- Messengerにログインしているユーザーを識別します
- 他のウェブサイトがあなたのメッセンジャーIDを読み込むのを防ぎたい
例えば、Messengerを以下の環境でのみ実行する場合:
それらのウェブサイトを信頼済みドメインに追加してください。
信頼済みドメインを追加する
Messengerの設定をNotiondeskで開き、 「許可されたドメイン」の設定を探してください。
Messengerの読み込みを許可するウェブサイトをそれぞれ追加してください。
例えば:
Messengerもアプリケーション内で実行されている場合:
そのドメインは別途追加してください。
変更を保存してから、Messengerがインストールされているウェブサイトを再読み込みしてください。
不正なドメインでは何が起こるのか
信頼済みドメインが有効になっている場合、Notiondesk は Messenger の設定を要求する Web サイトをチェックします。
現在の Web サイトが許可されていない場合、Notiondesk がリクエストをブロックし、Messenger は初期化されません。
訪問者には何も表示されません。
つまり、ウェブサイトが信頼済みドメインリストにない場合、Messengerが正しくインストールされていても、何も起こらないように見える可能性があるということです。
複数のウェブサイトを許可する
同じメッセンジャーを合法的に使用しているすべてのウェブサイトを追加してください。
例えば、Messengerは以下のような場面で使用できます。
Messengerを読み込む必要のある各環境は、許可される必要があります。
Messengerへのアクセスを許可すべきドメインのみを追加してください。
www.example.com
app.example.comwww.example.comapp.example.comwww.example.com
app.example.com
staging.example.com制作およびステージング環境
ステージング環境からMessengerをテストする場合は、その環境も信頼済みドメインに含まれていることを確認してください。
例えば:
Messengerが読み込まれなくなった場合は、後でステージングドメインを削除できます。
設定をテストしてください
信頼済みドメインを設定した後:
app.example.com
staging.example.com- 許可されたウェブサイトを開く
- ページを再読み込みしてください。
- Messengerランチャーが表示されていることを確認してください。
- Messengerを開いて、正常に読み込まれることを確認してください。
- 複数の許可ドメインを設定している場合は、別の許可ドメインをテストしてください。
JavaScript SDK を使用する場合は、初期化の失敗も捕捉できます。
Messengerは1つのサブドメインでは動作するが、別のサブドメインでは動作しない
あるウェブサイトで許可されているメッセンジャーが、他のすべてのサブドメインでも許可されていると考えるべきではありません。
Messengerを別のサブドメインでも実行する必要がある場合は、そのWebサイトを信頼済みドメインに追加してください。
例えば、Messengerが以下の環境で動作する場合:
しかし、以下の環境でも動作する必要があります。
両方とも正しく設定されていることを確認してください。
信頼できるドメインと識別されたユーザー
信頼できるドメインとユーザー認証は、それぞれ異なる問題を解決する。
信頼済みドメインは、どのウェブサイトがMessengerを読み込むことを許可するかを制御します。
ユーザー識別情報によって、どの認証済みユーザーが現在アプリケーションを使用しているかがMessengerに通知されます。
認証済み顧客を持つアプリケーションでは、両方を併用できます。
try {
const notiondesk = await initNotiondesk({
messengerId: "YOUR_MESSENGER_ID",
});
} catch (error) {
console.error(
"Could not initialize Notiondesk Messenger",
error,
);
}www.example.comapp.example.com- Messengerの利用範囲を、アプリケーションのドメインに限定してください。
- バックエンドで署名付きユーザートークンを生成してください。
- 認証後、ユーザートークンをメッセンジャーに渡してください。
認証フローについては、「Notiondesk Messenger でログインしているユーザーを識別する」を参照してください。