2026年6月9日、MicrosoftはSQL Server Management Studio(SSMS)22.7.0で「Agent mode for GitHub Copilot in SSMS」のパブリックプレビューを開始しました。従来のAskモードが回答やT-SQLの提案を中心としていたのに対し、Agent modeは、クエリの実行、実行プランの確認、結果に応じた再試行などを複数ステップで進められます。(Microsoft Azure)
結論として、利用者はSSMS 22.7以降への更新とAI Assistanceワークロードの追加が必要です。管理者は、導入前にSQL Serverの権限、実行コンテキスト、書き込み設定、MCPサーバーの利用範囲を確認してください。Microsoft securityの更新情報としてこの項目を見つけた場合でも、実際の変更対象はMicrosoft DefenderやSentinelではなく、SSMSに組み込まれたGitHub Copilot機能です。
Public Preview「Agent mode for GitHub Copilot in SSMS」で何が変わったのか
Agent modeでは、利用者が「このクエリが遅い原因を調べて」「失敗したSQL Agentジョブを分析して」といった目標を自然言語で指定すると、Copilotが必要な情報を収集し、ツールを呼び出しながら調査を進めます。
Askモードとの主な違いは次のとおりです。
| 比較項目 | Askモード | Agent mode |
|---|---|---|
| 処理の進め方 | 1回の質問に対して回答を返す | 目標達成まで複数ステップを実行する |
| クエリ実行 | 読み取り専用クエリが中心 | 承認後にクエリやコマンドを実行する |
| 結果の検証 | 利用者が確認する | 実行結果を確認し、必要に応じて方法を修正する |
| スキーマ変更 | T-SQLを提案し、利用者が実行する | 設定と権限が許せば、承認後に実行できる |
| 主な用途 | 質問、コード説明、T-SQLの作成 | 障害調査、性能分析、実装とテストなど |
Agent modeはSSMS 22.7以降で利用でき、クエリの実行、ファイルの読み取り、実行プランの分析、スキーマ変更などに対応します。ただし、実際に操作できる範囲は接続に使用したSQL Serverアカウントの権限を超えません。(Microsoft Learn)
複雑な調査を一つの依頼で進められる
たとえば、次のような作業をAgent modeに依頼できます。
- ストアドプロシージャと実行プランを分析し、改善案を作成する
- 特定時間帯のCPU使用率上昇について原因を調査する
- 過去24時間に失敗したSQL Agentジョブを抽出し、原因を整理する
- ストアドプロシージャを作成してテストする
- ロールの権限不足を調査し、必要なGRANT文を作成する
従来は、利用者がDMVやログを一つずつ確認し、結果をCopilotへ渡す必要がありました。Agent modeでは、承認を挟みながら調査と検証を続けられるため、複数の確認作業をまとめやすくなります。
接続先をプロンプトに明記する必要がある
重要な変更点として、Agent modeはアクティブなクエリエディターの接続コンテキストを自動的に引き継ぎません。
次のように、サーバー名とデータベース名をプロンプトへ含めるのが基本です。
SalesPRDサーバー上のWideWorldImportersデータベースで、
Sales.usp_QuarterlySalesSummaryの実行プランを分析し、
性能上の問題と改善候補を提示してください。
データベースへの変更は実行しないでください。
接続先を書かない場合、Copilotが登録済み接続を調べたり、利用者へ確認を求めたりするため、処理回数の増加や接続先の選択ミスにつながります。(Microsoft Learn)
誰に影響する変更なのか
DBAとデータベース開発者
日常的にSSMSでSQL Serverを管理しているDBAや開発者は、直接的な対象です。
特に、実行プランの分析、障害調査、SQL Agentジョブの確認、T-SQLの作成と検証を頻繁に行う担当者は、作業時間を短縮できる可能性があります。
一方、Agent modeが生成した判断や変更案が正しいとは限りません。インデックス追加、権限変更、DDL実行などは、必ずテスト環境で検証する必要があります。
セキュリティ担当者とIT管理者
管理者には、従来のCopilot Chatより広い確認が求められます。Agent modeは回答を表示するだけでなく、利用者の権限でクエリやコマンドを実行できるためです。
管理者は、少なくとも次の項目を確認してください。
- Agent modeを組織内で許可するか
- 実行用アカウントにどの権限を与えるか
READ_ONLYからREAD_WRITEへの変更を許可するか- 「Allow always」の利用を認めるか
- 外部MCPサーバーを利用できる範囲
- 機密ファイルをCopilotの参照対象から除外するか
Copilotを利用していないユーザー
GitHub Copilotへサインインしていないユーザーや、AI Assistanceワークロードをインストールしていないユーザーには、Agent modeによる直接的な変更はありません。
また、Agent modeがバックグラウンドで勝手に既存データベースを変更するわけではありません。利用者がAgent modeを選択し、実行内容を承認した場合に処理が進みます。
Agent modeを利用するための更新・設定手順
2026年6月9日にAgent modeが追加されたバージョンはSSMS 22.7.0です。その後、6月16日に大きなスクリプトを開いた際のメモリ使用量問題を修正したSSMS 22.7.1が公開されています。新規導入時は、22.7.0を指定して入れるのではなく、最新の22.7.xへ更新するのが適切です。(Microsoft Learn)
SSMSのバージョンを確認する
SSMSのメニューから[ヘルプ]-[バージョン情報]を開き、バージョンが22.7以降であることを確認します。
22.6以前の場合は、Visual Studio Installerを起動し、SSMSの[更新]を実行してください。SSMS 22はVisual Studio Installerを使ってインストール、更新、構成変更を行います。(Microsoft Learn)
AI Assistanceワークロードを追加する
Agent modeが表示されない場合は、AI Assistanceワークロードがインストールされているか確認します。
- Visual Studio Installerを起動する
- 対象のSSMSで[変更]を選ぶ
- [ワークロード]から[AI Assistance]を選択する
- [変更]を実行する
- SSMSを再起動する
AI Assistanceに含まれるコンポーネントは、個別に外さずまとめてインストールします。(Microsoft Learn)
GitHub Copilotへサインインする
SSMS右上のCopilotアイコンから、Copilotを利用できるGitHubアカウントでサインインします。
サインイン後もCopilotが無効な場合は、次を確認してください。
- サインイン中のGitHubアカウントが正しいか
- GitHub Copilotの利用権が付与されているか
- 組織管理者がCopilotまたはAgent modeを無効化していないか
- ファイアウォールやプロキシで通信が遮断されていないか
Agent modeを選択する
- SSMSで[表示]-[GitHub Copilot Chat]を開く
- チャット画面下部のモード選択から[Agent]を選ぶ
- [Tools]アイコンを開く
sql-toolsのツールが有効になっていることを確認する- サーバー名、データベース名、目的、変更可否を含めて依頼する
Agent modeはローカルのMCPサーバーであるsql-toolsを使用します。すべてのツールを無効にすると、想定どおりに動作しません。(Microsoft Learn)
Microsoft securityの観点で最も重要なのは実行権限
Agent modeはクエリを実行する前に承認を求めますが、承認画面はセキュリティ境界ではありません。
実際のセキュリティ境界はSQL Serverの権限です。接続ユーザーにALTER、CONTROL、db_ownerなどの強い権限があれば、承認後にその権限を使った操作が行われる可能性があります。(Microsoft Learn)
検証時はREAD_ONLYを維持する
Agent modeは初期状態でREAD_ONLYとして構成されます。接続ユーザーが書き込み権限を持っていても、この状態ではデータ更新やスキーマ変更を実行しません。
mcp.jsonの設定をREAD_WRITEへ変更すると、権限の範囲内で書き込み操作が可能になります。パブリックプレビューの検証段階では、まずREAD_ONLYのまま、調査や分析用途に限定するのが安全です。(Microsoft Learn)
Copilot専用の低権限アカウントを指定する
既定では、Agent modeのクエリはSSMSで接続したユーザーの権限で実行されます。
管理者は、データベースのCONSTITUTION.mdにagentExecuteAsUserを設定し、Copilot専用の低権限ユーザーを指定できます。
---
agentExecuteAsUser: CopilotReadOnlyUser
---
この設定はデータベース単位で適用され、SSMSは指定されたアカウントを使ってCopilot生成クエリを実行します。利用者側には、そのアカウントに対するIMPERSONATE権限が必要です。権限がなければ、利用者自身の強い権限へ自動的にフォールバックせず、Copilotの実行が失敗する設計です。(Microsoft Learn)
「Allow always」は安易に選ばない
実行時の承認には、次の選択肢があります。
| 選択肢 | 動作 |
|---|---|
| Allow once | 今回の実行だけ許可する |
| Allow for this session | 現在のチャット中、そのツールを許可する |
| Allow always | 以後のセッションでも、そのツールを許可する |
検証中は原則として「Allow once」を使用してください。「Allow always」を選ぶと確認回数は減りますが、誤ったプロンプトや意図しないツール呼び出しを見落としやすくなります。
保存済みの承認設定は、[ツール]-[オプション]-[GitHub]-[Copilot]-[Tools]から確認、リセットできます。(Microsoft Learn)
キャンセルしても実行済みの変更は戻らない
処理中に[Cancel]を選ぶと、実行中のツールや保留中のクエリは停止します。ただし、すでに承認して実行されたクエリは自動的にロールバックされません。(Microsoft Learn)
書き込みを許可する場合は、事前に次を準備してください。
- データベースのバックアップ
- 変更前後を確認するSQL
- ロールバックスクリプト
- トランザクションを使った検証手順
- 変更履歴を記録するチケットや作業記録
管理者が確認すべき組織設定
Agent modeをグループポリシーで無効化できる
SSMS 22.7以降では、Visual StudioのADMX/ADMLテンプレートを使い、Agent modeを組織単位で無効化できます。
設定場所は次のとおりです。
コンピューターの構成
└ 管理用テンプレート
└ SQL Server Management Studio
└ Copilot Settings
└ Disable Agent Mode
ポリシーはローカルグループポリシーまたはMicrosoft Intuneで展開できます。社内のAI利用基準が未整備の場合は、いったん無効化し、検証対象者だけに提供する方法が現実的です。(Microsoft Learn)
MCPサーバーは許可リストで制限する
Agent modeは、MCPを使ってソース管理、社内チケット、ドキュメント、外部APIなどと連携できます。
追加したMCPツールは初期状態で無効ですが、利用者が有効化すると、外部サービスへ情報が渡る可能性があります。GitHub Copilotの管理画面では、組織が利用を許可するMCPサーバーを許可リストで制御できます。(Microsoft Learn)
外部MCPを許可する前に、次を確認してください。
- 運営元と配布元が信頼できるか
- 送信されるデータの範囲
- 認証情報の保存方法
- ログや入力データの保持期間
- 書き込み系ツールが含まれていないか
- 組織の情報分類ルールに適合するか
機密ファイルはコンテンツ除外を設定する
GitHub Copilot BusinessまたはEnterpriseでは、リポジトリや組織単位でコンテンツ除外を設定できます。
除外されたファイルは、SSMSのコード補完やCopilot Chatの参照対象になりません。接続文字列、秘密鍵、個人情報を含むSQLファイルなどは、リポジトリへ保存する方法そのものを見直したうえで、必要に応じて除外してください。(Microsoft Learn)
料金・移行・期限で確認すべきこと
| 確認項目 | 実務上の判断 |
|---|---|
| 料金 | Agent mode専用の契約ではなく、GitHub Copilotの利用権と利用枠を確認する |
| 無料利用 | Copilot Freeでも試せるが、チャットやエージェント利用には月間上限がある |
| 更新 | SSMS 22.7以降とAI Assistanceワークロードが必要 |
| データベース移行 | Agent modeを使うためのDB移行やスキーマ変換は不要 |
| 強制移行 | 既存のAskモードからAgent modeへの強制切り替えはない |
| 期限 | 一般提供日やパブリックプレビュー終了日は公表されていない |
| 本番利用 | プレビュー段階では、開発・検証環境を優先する |
GitHub Copilot Freeには、チャットとエージェント機能の利用枠があります。複雑なAgent modeの処理では、一つのタスク内で複数回モデルが呼び出される場合があるため、単純な質問より利用量が増える可能性があります。(Microsoft Learn)
また、GitHub Copilotの課金体系は2026年6月1日から使用量ベースへ変更されており、一部の既存年払い契約では旧方式が残っています。固定の価格情報だけで判断せず、利用中アカウントのGitHub Copilotプラン、AIクレジット、予算上限、超過課金設定を確認してください。(GitHub Docs)
パブリックプレビューは、正式運用前のテストと評価を目的とする段階です。一般提供日や移行期限は示されていないため、急いで本番環境へ展開する必要はありません。(Microsoft Azure)
Agent modeが使えないときの確認ポイント
| 症状 | 主な原因 | 対処 |
|---|---|---|
| モード一覧にAgentがない | SSMSが22.6以前 | 最新の22.7.xへ更新する |
| Copilot Chatが表示されない | AI Assistanceが未導入 | Visual Studio Installerで追加する |
| サインインしても使えない | Copilot利用権がない | GitHubアカウントと契約を確認する |
| 組織アカウントだけ使えない | 管理ポリシーで無効 | GitHub管理者またはIT管理者へ確認する |
| 別のDBを参照しようとする | 接続先がプロンプトにない | サーバー名とDB名を明記する |
| 更新クエリを実行できない | READ_ONLYまたは権限不足 | 設定とSQL Server権限を確認する |
| 専用ユーザーで実行できない | IMPERSONATE権限がない | 管理者が権限設計を確認する |
| 処理を止めたのに変更が残る | 実行済み処理は戻らない | DB状態を確認し、必要なら手動で戻す |
まずは読み取り専用で小さく検証する
Agent mode for GitHub Copilot in SSMSは、単なる質問回答から、調査・実行・検証を含むデータベース作業支援へ踏み込む変更です。その分、導入効果だけでなく、権限設定や誤操作時の影響も大きくなります。
最初に行うべきことは、SSMSを最新の22.7.xへ更新し、開発または検証用データベースへ低権限アカウントで接続することです。READ_ONLYと「Allow once」を維持したまま、実行プラン分析、SQL Agentジョブ調査、ログ確認など、変更を伴わない用途から試してください。
その結果を基に、管理者がAgent modeのグループポリシー、専用実行アカウント、MCP許可リスト、利用料金の上限を決めてから、対象ユーザーを段階的に広げるのが安全です。

コメント