バージョン 7.2.5 - Server Chat と ChatGPT アカウント連携

Published: 2026-08-13 | Stela Augustínová

DbGate バージョン 7.2.5 をリリースしました。このリリースでは、Server Chat とデスクトップアプリケーションにおける ChatGPT アカウントの直接連携により、DbGate の AI 機能を拡張しています。また、報告されていた 2 件のリグレッションを修正し、ファイル、リモートダウンロード、プラグイン、生成されるスクリプトに関するセキュリティ強化を複数の層で追加しました。

データベースサーバー全体に対する質問

Server Chat は、接続レベルでの AI 支援クエリを実現する新しい Premium 機能です。Database Chat が選択された 1 つのデータベースを対象とするのに対し、Server Chat は接続を通じて利用可能なデータベースを検出し、関連するスキーマを調査して、複数のデータベースにまたがる質問への回答を支援できます。

これは、顧客、地域、環境、アプリケーションごとにデータを分離しているサーバーで役立ちます。各データベースを開いて手作業でクエリを組み立てる代わりに、必要な結果を自然言語で説明できます。Server Chat は関連するデータベースとテーブルを特定し、適切な SQL を生成して、実行前に確認できるよう提示します。

この機能は PostgreSQL、MySQL、MariaDB、およびサポート対象の SQL Server エディションに対応しています。データベースエンジンが許可する場合はサーバーレベルのクエリを実行でき、それがより安全または適切なスコープである場合には特定のデータベースを対象にすることもできます。生成されたデータベース単位のクエリは、通常の SQL エディターで開いてさらに確認・調整することも可能です。

ChatGPT アカウントを DbGate デスクトップに接続

Premium ユーザーは、DbGate デスクトップアプリケーションの AI 設定から ChatGPT アカウントを直接接続できるようになりました。接続すると、DbGate の AI 支援クエリワークフローの AI プロバイダーとして OpenAI Codex が利用可能になります。

この接続はブラウザーベースのサインインフローを使用するため、API キーを DbGate にコピーする必要はありません。デスクトップアプリケーションは取得した認証情報を安全に保存し、必要に応じて接続を更新します。また、同じ設定画面からアカウントの接続を解除できます。

サインイン後は、DbGate で利用可能な Codex モデルを選択できます。ここには、DbGate の標準的な AI プロバイダー連携では通常利用できない Sol などのより高度なモデルも含まれます。これらのモデルは、チャット内でのストリーミング応答やツールを活用したデータベース探索とともに利用でき、デスクトップユーザーが高度な AI 支援をデータベースワークフローに取り入れるためのもう 1 つの手軽な方法となります。

SQLite と LibSQL における正確な bigint 値

JavaScript の安全な整数範囲を超える SQLite および LibSQL の整数値が、丸められることなく保持されるようになりました。以前は、1254071346418286654 のような値が 1254071346418286600 と表示され、データグリッドに到達する前に情報が失われる可能性がありました。

誤った値が表示されるだけでなく、この変換によって丸められた数値がデータベースに格納された値と一致しなくなり、フィルターが機能しなくなることもありました。DbGate は、より小さな整数を通常の数値として扱いつつ、大きな整数を精度を保った表現で保持するようになりました。

PostgreSQL サポートに関する NPM インストールの修正

バージョン 7.2.4 では、PostgreSQL プラグインが存在しないパッケージバージョンである dbgate-pg-dumper@7.2.4 を参照していたため、NPM から dbgate-serve をインストールする際に失敗することがありました。リリースのバージョニング処理では、dbgate-pg-dumper を DbGate 本体のリリースに合わせて書き換えるのではなく、独自の有効なバージョンのまま維持するようになりました。

これにより、PostgreSQL プラグインを使用するデプロイにおいて、想定どおりの NPM インストールフローが復旧します。

サーバーデプロイのためのセキュリティ強化

DbGate 7.2.5 には、外部入力やサーバーのファイルシステムとやり取りする処理に対する多層防御の改善が含まれています。

  • エクスポートファイルおよび生成されるプレビューは、DbGate が管理するデータディレクトリに制限されます。パスのチェックはシンボリックリンクも考慮するため、一見有効に見えるエクスポートパスであっても許可された場所の外に出ることはできません。
  • リモートのテキストおよび JSON Lines のダウンロードは、承認されたソースタイプのみを受け付け、ネットワーク上の宛先を検証します。これにより、ローカルまたはプライベートなサービスへのリクエストを防ぎ、ローカルファイルの読み取りをブロックします。
  • プラグインのパッケージ名は読み込み前に検証されるようになり、プラグインのコマンドディスパッチには適切な権限が必要となり、明示的に定義された関数ハンドラーのみを受け付けます。
  • DbGate が JavaScript を生成する際、ユーザーが指定したコメントやスケジュールのディレクティブはサニタイズされ、改行文字によってコメントから抜け出して実行可能なコードが挿入されることを防ぎます。

これらの変更は、接続、インポート、エクスポート、自動化を複数の利用者が使用する、共有環境や Web ベースの DbGate インストールにおいて特に重要です。

完全な変更履歴

7.2.5

  • 追加: PostgreSQL、MySQL、MariaDB、およびサポート対象の SQL Server エディションにまたがる AI 支援クエリのための Server Chat(Premium)
  • 追加: デスクトップアプリケーションで Codex モデルを使用するための ChatGPT アカウント連携(Premium)
  • 修正: SQLite および LibSQL の bigint 値が精度を保持するようになりました
  • 修正: dbgate-pg-dumper のバージョン不一致による NPM インストールの失敗
  • 修正: エクスポートファイルの書き込みを管理対象ディレクトリに制限し、シンボリックリンクによるパスの逸脱を防止
  • 修正: リモートのテキストおよび JSON Lines ダウンロードにおける SSRF とローカルファイル読み取りを防止
  • 修正: 安全でないプラグイン操作を防ぐため、プラグインのパッケージ名とコマンドディスパッチを検証
  • 修正: コードインジェクションを防ぐため、生成されるスクリプトのコメントとディレクティブをサニタイズ