概要ウェブチャットのセキュリティ
セキュリティ機能を有効にすると、Webチャットの設定を通じてユーザーの認証、個人情報の保護、 およびAI アシスタントへのアクセス制限を行うことができます。
このセクションの内容は、 AIアシスタントに適用されます。 AIチャットを外部ページに埋め込みたい場合は、 「Webチャットのセキュリティの概要」 ページを参照してください。
Webチャットと AIアシスタントの間でやり取りされるすべてのメッセージは、Transport Layer Security( TLS )を使用して暗号化されており、ネットワーク上を伝送される機密データを保護します。 しかし、それでもなお、セキュリティ上の潜在的な危険から保護する必要がある場合もある。 ウェブチャットのセキュリティ機能を有効にし、ウェブサイトのコードを適切に更新することで、以下の保護を追加することができます:
不正なウェブサイトが、ウェブチャット埋め込みスクリプトをコピーしたとしても、そのサイトから AIアシスタントにメッセージが送信されるのを防ぐことができます。 (統合IDやサービスインスタンスIDなど、埋め込みスクリプト内の一意の識別子は、あなたのウェブサイトにアクセスできる人なら誰でも見ることができます)
認証が必要なAIアシスタントの機能へのアクセスを制御するために、顧客を安全に認証することができます。
機密データを暗号化することで、顧客には表示されなくしつつ、 AIアシスタントには引き続きアクセスさせることができます。
WebチャットのセキュリティにはJSON Web Tokens(JWT)が使用されています。これは、ウェブサイトからAI アシスタントビルダーサービスへ送信される各メッセージに添付されるデータオブジェクトです。 JWTは、あなただけが持つ秘密の暗号化キーを使ってデジタル署名されるため、各メッセージがあなたのウェブサイトから発信されたものであることが保証されます。 JWTペイロードは、ユーザーを安全に認証し、暗号化されたプライベートデータを運ぶためにも使用できる。
JSON Web Tokens の詳細については、 JWT 仕様書を参照してください。
ウェブチャットのセキュリティを有効にするには、以下のカスタマイズが必要です:
秘密暗号鍵で署名されたJWTを生成するウェブ・アプリケーション・サーバー・コードの実装
生成されたJWTを提供するためのウェブチャット設定のカスタマイズ
ウェブチャットのセキュリティ設定でセキュリティを有効にする
ウェブチャットセキュリティを有効にすると、適切に署名されたJWTが添付されていないウェブチャット統合によって受信されたメッセージは拒否されます。
これらの手順の実行方法の詳細については、 「Webチャットのセキュリティを有効にする」 を参照してください。
Webチャットのセキュリティを有効にすると、必要に応じて追加のセキュリティ対策をオプションで実装できます:
JWTを使用すれば、ユーザーIDに基づいて顧客を安全に認証できるため、 AIアシスタントが認証を必要とする機能へのアクセスを制御することが可能になります。
Webチャットのセキュリティ機能が有効になっていない場合、 AIアシスタントを利用する各顧客は、メッセージリクエストに含まれるプロパティ user_id によってのみ識別されます。 これは、課金目的でユニークなユーザーを特定するには十分だが、改ざんされる可能性があるため、安全ではない。
ユーザーID情報をJWTペイロードの一部としてエンコードすることで、ユーザーを安全に認証できます。 JWTは署名されており、ユーザーが変更することはできない。
JWT を使用した安全な認証の詳細については、 「Web チャットでのユーザーの認証」 を参照してください。
機密性の高い顧客情報を暗号化し、JWTユーザーペイロードの一部として含めることで、不正アクセスを防ぐことができます。
ユーザーペイロードはJWTの一部であり、 AIアシスタントにはアクセスさせたいが、顧客には見られたくない情報を送信するために使用できます。 この情報はプライベート変数にのみ保存され、顧客が見ることはできず、ログに含まれることもない。
ユーザーペイロードを使用して機密情報を保護する方法の詳細については、 「Webチャットでの機密データの暗号化」 を参照してください。
チュートリアル: Webチャットのセキュリティ機能を使用してユーザーを認証し、機密データを保護する例を紹介する開発者向けチュートリアルについては、 「チュートリアル:セッション中のユーザー認証」 を参照してください。