概要ウェブチャットのセキュリティ

注: このセクションの内容は、AIアシスタントに適用されます。 AIチャットを外部ページに埋め込む場合は、「ウェブチャットのセキュリティ概要」( /chat/web_chat_security_overview.html )のページを参照してください。

セキュリティを有効にすると、ユーザーの認証、個人データの保護、AIアシスタントへのアクセスを制限するようにウェブチャットを設定できます。

ウェブチャットとAIアシスタントの間で送信されるメッセージはすべて、トランスポート・レイヤー・セキュリティ(TLS)を使用して暗号化され、ネットワークを通過する際に機密データを保護します。 しかし、それでもなお、セキュリティ上の潜在的な危険から保護する必要がある場合もある。 ウェブチャットのセキュリティ機能を有効にし、ウェブサイトのコードを適切に更新することで、以下の保護を追加することができます:

  • 不正なウェブサイトがあなたのAIアシスタントにメッセージを送信するのを防ぐことができます。 (統合IDやサービスインスタンスIDなど、埋め込みスクリプト内の一意の識別子は、あなたのウェブサイトにアクセスできる人なら誰でも見ることができます)

  • 顧客を安全に認証し、認証が必要なAIアシスタントの機能へのアクセスを制御することができます。

  • AIアシスタントがデータにアクセスできるようにしながらも、機密データを暗号化して顧客に見えないようにすることができる。

ウェブチャットのセキュリティは、JSONウェブトークン(JWT)を使用します。JWTは、あなたのウェブサイトからAIアシスタントビルダーサービスに各メッセージと一緒に送信されるデータオブジェクトです。 JWTは、あなただけが持つ秘密の暗号化キーを使ってデジタル署名されるため、各メッセージがあなたのウェブサイトから発信されたものであることが保証されます。 JWTペイロードは、ユーザーを安全に認証し、暗号化されたプライベートデータを運ぶためにも使用できる。

JSONウェブトークンの詳細については、JWT仕様を参照のこと)。

ウェブチャットのセキュリティを有効にするには、以下のカスタマイズが必要です:

  • 秘密暗号鍵で署名されたJWTを生成するウェブ・アプリケーション・サーバー・コードの実装

  • 生成されたJWTを提供するためのウェブチャット設定のカスタマイズ

  • ウェブチャットのセキュリティ設定でセキュリティを有効にする

    ウェブチャットセキュリティを有効にすると、適切に署名されたJWTが添付されていないウェブチャット統合によって受信されたメッセージは拒否されます。

これらの手順の詳細については、Webチャットのセキュリティを有効にするを参照してください。

Webチャットのセキュリティを有効にすると、必要に応じて追加のセキュリティ対策をオプションで実装できます:

  • JWTを使用することで、ユーザーIDによる安全な顧客認証が可能になり、認証が必要な機能へのアクセスをAIアシスタントが制御できるようになります。

    ウェブチャットのセキュリティを有効にしないと、AIアシスタントを使用する各顧客は、メッセージ要求の一部である'user_idプロパティによってのみ識別されます。 これは、課金目的でユニークなユーザーを特定するには十分だが、改ざんされる可能性があるため、安全ではない。

    ユーザーID情報をJWTペイロードの一部としてエンコードすることで、ユーザーを安全に認証できます。 JWTは署名されており、ユーザーが変更することはできない。

    安全な認証のためのJWTの使用に関する詳細は、ウェブチャットでのユーザー認証を参照してください。

  • 機密性の高い顧客情報を暗号化し、JWTユーザーペイロードの一部として含めることで、不正アクセスを防ぐことができます。

    ユーザーペイロードは、AIアシスタントにアクセスさせたいが、顧客には見せたくない情報を送信するために使用できるJWTの一部です。 この情報はプライベート変数にのみ保存され、顧客が見ることはできず、ログに含まれることもない。

    ユーザーペイロードを使用して機密情報を保護する方法の詳細については、ウェブチャットで機密データを暗号化するを参照してください。

開発アイコン チュートリアル: ウェブチャットセキュリティを使用してユーザーを認証し、機密データを保護する例を示す開発者向けチュートリアルについては 、「チュートリアル:セッションの途中でユーザーを認証する 」を参照してください。