Power Queryを使ってSQL Serverからデータを取り込もうとした際に、「指定された証明書がサーバーから拒否されました」や「証明書チェーンが信頼されていません」といったエラーが表示されることがあります。このエラーは主にSSL/TLS証明書に関する問題であり、適切な対処を行わないとデータ接続ができません。本記事では、この証明書エラーが発生する原因を整理し、会社のPC環境で安全に確認・対処するためのポイントを解説します。
【要点】この記事で確認すること
- 最初に見る場所: エラーメッセージの詳細とPower Queryの接続設定画面
- 切り分けの軸: サーバー側証明書の問題、クライアントPCの信頼ストア、接続文字列のオプション
- 注意点: 会社PCでは証明書の信頼設定を勝手に変更せず、管理者に確認してから対処してください
ADVERTISEMENT
目次
1. 証明書エラーの代表的な症状と原因
Power QueryでSQL Serverに接続する際に発生する証明書エラーは、いくつかの典型的なパターンに分類できます。代表的なエラーメッセージとしては「認証のチェックに失敗しました」「指定された証明書がサーバーから拒否されました」「証明書チェーンが信頼されていません」などがあります。これらのエラーが発生する原因として、以下の3つが特に多いです。
原因1:サーバー証明書の有効期限切れ
SQL Serverが使用しているSSL証明書の有効期限が切れている場合、クライアント側で接続が拒否されます。この場合、データベース管理者に証明書の更新を依頼する必要があります。自社で管理しているサーバーであれば、証明書の有効期限を定期的に確認する仕組みを導入すると良いでしょう。
原因2:証明書チェーンの信頼不足
サーバー証明書を発行した認証局(CA)がクライアントPCの「信頼されたルート証明機関」ストアに含まれていない場合もエラーになります。例えば、社内のプライベートCAで発行した証明書や、自己署名証明書を使用しているケースが該当します。この場合、クライアントPCにルート証明書をインストールする必要があります。
原因3:ホスト名の不一致
証明書に記載されているサブジェクト名(CNまたはSAN)と、接続先のサーバー名(またはIPアドレス)が一致していない場合もエラーになります。例えば、サーバーの正式名が「sql01.example.com」であるにもかかわらず、接続文字列で「sql01」と短縮名を使っていると不一致が発生します。
2. 初期確認:エラーメッセージと接続設定の詳細
まずは発生しているエラーメッセージを正確に確認しましょう。Power Queryでは、接続時に表示されるエラーダイアログの「詳細」ボタンから詳細なエラー内容を確認できます。以下の手順でメッセージを収集してください。
- Power Queryエディターで「データソース設定」を開く
- 該当のSQL Server接続を選択し「編集」をクリック
- 表示される接続ダイアログで「詳細」オプションを展開
- エラーメッセージが表示された場合はスクリーンショットを保存する
- メッセージに含まれる証明書のサブジェクトや発行者の情報をメモする
この情報をもとに、原因がサーバー証明書の期限切れなのか、信頼関係の問題なのかを切り分けます。また、Power Queryの接続設定で「暗号化接続を強制する」などのオプションが有効になっているかどうかも確認してください。
| 設定項目 | 値 | 効果 |
|---|---|---|
| TrustServerCertificate | True / False | Trueにすると証明書の検証をスキップします。False(デフォルト)だと検証を行います。 |
| Encrypt | True / False | Trueにすると強制的に暗号化接続を要求します。Falseでもサーバー側で要求されれば暗号化されます。 |
| HostNameInCertificate | 証明書のサブジェクトと一致する値 | 証明書の検証時に使用するホスト名を明示的に指定します。 |
3. 接続文字列による証明書設定の変更方法
Power Queryでは、接続文字列に証明書関連のオプションを追加することで、エラーを回避できる場合があります。ただし、この設定はセキュリティを低下させる可能性があるため、一時的な対処として位置づけてください。以下の手順で接続文字列を編集します。
- Excelの「データ」タブ → 「データの取得」 → 「SQL Serverデータベースから」を選択
- サーバー名とデータベース名を入力し、詳細オプションを展開
- 「SQLステートメント」の下にある「接続設定」をクリック
- 「詳細プロパティ」タブで、接続文字列の最後に
;TrustServerCertificate=True;を追加 - 必要に応じて
;Encrypt=True;や;HostNameInCertificate=sql01.example.com;も追加 - OKをクリックして接続を試行する
TrustServerCertificate=True は、証明書の検証そのものをスキップするため、オンプレミス環境のテストや開発用途に限定して使用してください。本番環境やインターネット経由の接続では絶対に使用しないでください。
4. クライアントPCの信頼構成と管理者への依頼事項
根本的な解決として、クライアントPCにサーバー証明書を発行した認証局のルート証明書をインストールする方法があります。これは社内のプライベートCAや自己署名証明書を使用している場合に有効です。ただし、Windowsの証明書ストアはシステム全体に影響を与えるため、管理者権限が必要です。以下の失敗パターンと管理者確認事項を参考にしてください。
失敗パターン:自己署名証明書での接続
開発環境などで自己署名証明書を使用している場合、クライアントPCはその証明書を信頼しません。TrustServerCertificate=Trueで一時的に回避することもできますが、恒久的には証明書を信頼ストアに追加するか、正規のCA署名済み証明書に切り替える必要があります。自己署名証明書のルート証明書をインストールする場合は、必ず管理者の承認を得てから行ってください。
管理者確認事項
- 証明書の入手: サーバー証明書を発行したCAのルート証明書(.cerファイル)をデータベース管理者から入手する
- インストール手順: 管理者権限でmmc.exeを起動し、「証明書スナップイン」→「コンピューターアカウント」→「信頼されたルート証明機関」→「証明書」フォルダにインポート
- グループポリシー: 社内で複数台のPCに同じ証明書を配布する場合は、Active Directoryのグループポリシーを使って一括インストールする方法が効率的です
- TLSバージョン: サーバーとクライアントのTLSバージョンが一致しているか確認する。SQL Server 2016以降はTLS 1.2が推奨
5. よくある質問(FAQ)
Q1. TrustServerCertificate=True に設定しても安全ですか?
A. 安全ではありません。この設定は証明書の検証を完全にスキップするため、中間者攻撃を受けるリスクがあります。どうしても必要な場合を除き、本番環境では使用しないでください。信頼できるCAの証明書を使用することを強く推奨します。
Q2. Excel 32ビット版と64ビット版で挙動は異なりますか?
A. 証明書エラーの挙動自体は同じですが、64ビット版ではODBCドライバーのバージョンが異なる場合があります。最新のODBC Driver for SQL Serverをインストールすることで、TLS 1.2以降のサポートが改善されます。
Q3. エラーが「証明書チェーンが信頼されていません」と表示される場合、何をすれば良いですか?
A. このエラーは、クライアントがサーバー証明書のルートCAを信頼していないことを示します。接続文字列に ;TrustServerCertificate=True; を追加して一時的に回避するか、管理者に依頼してルート証明書をインストールしてください。後者が恒久的な解決策です。
6. まとめ
Power QueryでSQL Serverに接続する際の証明書エラーは、サーバー証明書の期限切れ、信頼不足、ホスト名不一致の3つが主な原因です。まずはエラーメッセージの詳細を確認し、接続文字列のオプション(TrustServerCertificateなど)で一時的に対処できますが、根本的には信頼できるCAの証明書を使用するか、ルート証明書をクライアントにインストールする必要があります。会社のPCでは管理者の了承を得た上で対処を行い、セキュリティを損なわない設定を心がけてください。
ADVERTISEMENT
超解決 Excel・Word研究班
企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。
Office・仕事術の人気記事ランキング
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【PDF】PDFのサムネイルプレビューが表示されない!エクスプローラーの設定とAcrobat環境設定
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Excel】文字がセルの枠からはみ出す・隠れる!「折り返して表示」と「縮小して全体を表示」の使い分け
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
