概要
2021 年 5 月 12 日の Windows および Microsoft Office の更新プログラム以降、クエリの実行でリモート参照を無効化できるよう、アプリケーションのセキュリティを高めるオプションが追加されました。
2021 年 10 月 12 日の Windows 更新プログラム以降、アプリケーションが SQL クエリを使用して外部データベースを開こうとしたときに、Windows イベントをログに記録するオプションが追加されます。
特権のないユーザーが Jet Red データベース エンジン または Access Connectivity Engine (ACE) を使用してカスタム SQL クエリを実行できるようにする場合は、これを行う必要がある場合があります。
既定では、これらの更新プログラムをインストールすることで、Jet または ACE にアクセスするための変更は行われません。
詳細
リモート データベースへのアクセス
Jet Red データベース エンジン または Access Connectivity Engine (ACE) を使用したリモート データベースへのアクセスを無効にすると、SQL クエリの実行時に、次のようなエラー メッセージが表示されることがあります。
- Microsoft Access: ユーザーが Access でクエリを実行すると、次のエラー メッセージが表示されます。
| [エラーメッセージ] ダイアログ ボックス | エラー メッセージのテキスト |
|---|---|
|
Microsoft Access この種類のオブジェクトの操作はサポートされていません。 |
- Microsoft Access: ユーザーがクエリを実行するコードを実行すると、エラー メッセージがコードで処理されない限り、実行時エラー 3251 が表示されます。
| [エラーメッセージ] ダイアログ ボックス | エラー メッセージのテキスト |
|---|---|
|
Microsoft Visual Basic for Applications 実行時エラー '3251' この種類のオブジェクトの操作はサポートされていません。 |
警告
次のレジストリ値を再有効にすることを選択した場合、悪意のあるユーザーまたは悪意のあるソフトウェアによる攻撃に対してデバイスが脆弱になる可能性があります。 無効後に、これらのレジストリ値を再有効化することはお勧めしません。 ただし、このような回避策を独自の判断で実装できるように、この情報を提供しています。 この方法は、お客様各自の責任において使用してください。
警告
その場合、オペレーティング システムの再インストールが必要になる可能性があります。 問題によっては、オペレーティング システムの再インストールが必要になる場合があります。 Microsoft は、このような問題の解決については保証していません。 レジストリの変更はユーザー自身の責任において行ってください。
リモート データベース アクセス試行の監査
注
監査は、現時点では Jet Red データベース エンジン でのみ使用できます。
"アプリケーションとサービス ログ'\Microsoft\Windows\JetRed" の下に Windows イベントをログに記録するイベント ビューアーに監査が追加されます。
既定では、監査は有効にされ、1 が監査を有効にし、0 が監査を無効にする新しい DWORD AllowQueryRemoteTables_Auditによって制御されます。
この機能が有効になっている場合、Windows イベント "level" は "Informational" で、"メッセージ" は "External Database open attempted" です。
この機能が無効になっている場合、"レベル" は "エラー" で、"メッセージ" は "外部データベースのオープン試行がブロックされました" です。
イベントの [ 詳細 ] タブには、次の例に示すように、外部データベースへのパスと実行可能ファイルの両方が含まれます。
-
EventData
データベース パス: C:\PathToMyDb\myDatabase.mdb
実行可能ファイル: C:\PathtoMyApplication\myApplication.exe
Jet Red データベース エンジン
Jet Red Database エンジンの使用を無効にする
Jet Red データベース エンジン を使用してリモート データベースへのアクセスを無効にするには、レジストリに次を追加します。
x64 ベースのデバイスの場合:
-
レジストリの場所: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Jet\4.0\Engines
DWORD 名: AllowQueryRemoteTables
値のデータ: 0
x86 ベースのデバイスの場合:
-
レジストリの場所: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines
DWORD 名: AllowQueryRemoteTables
値のデータ: 0
メモ Jet Red データベース エンジン がリモート データベースに再度アクセスできるようにするには、[ 値データ] を 1 に変更します。
Jet Red データベース エンジンの監査を無効にする
Jet Red データベース エンジン がリモート データベースにアクセスしようとしたときに監査を無効にするには、 AllowQueryRemoteTables_Audit DWORD をレジストリに追加します。
x64 ベースのデバイスの場合:
-
レジストリの場所: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Jet\4.0\Engines
DWORD 名: AllowQueryRemoteTables_Audit
値のデータ: 0
x86 ベースのデバイスの場合:
-
レジストリの場所: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines
DWORD 名: AllowQueryRemoteTables_Audit
値のデータ: 0
メモ Jet Red データベース エンジン がリモート データベースへのアクセス試行を監査するように再度有効にするには、[ 値データ] を 1 に変更します 。
Access Connectivity Engine (ACE)
Access Connectivity Engine の使用を無効にする
Access Connectivity Engine (ACE) を使用してリモート データベースにアクセスすることを無効にするには、次の表に示すように、次の DWord と値をレジストリに追加します。
- DWORD 名: AllowQueryRemoteTables
- 値のデータ: 0
| インストールの種類 | Office バージョン | OS ビットネス | Office Bitness | レジストリ パス |
|---|---|---|---|---|
| C2R | 365 / 2019 / 2016 | x64 | x64 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\ Office\16.0\Access Connectivity Engine\Engines |
| C2R | 365 / 2019 / 2016 | x86 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 16.0\Access Connectivity Engine\Engines |
| C2R | 365 / 2019 / 2016 | x64 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\ Microsoft\Office\16.0\Access Connectivity Engine\Engines |
| C2R | 2013 | x64 | x64 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 15.0\Access Connectivity Engine\Engines |
| C2R | 2013 | x86 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 15.0\Access Connectivity Engine\Engines |
| C2R | 2013 | x64 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\ Microsoft\Office\15.0\Access Connectivity Engine\Engines |
| MSI | 2016 | x64 | x64 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\ AccessConnectivity Engine\Engines |
| MSI | 2016 | x86 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\ AccessConnectivity Engine\Engines |
| MSI | 2016 | x64 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ Microsoft\Office\16.0\Access Connectivity Engine\Engines |
| MSI | 2013 | x64 | x64 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ AccessConnectivity Engine\Engines |
| MSI | 2013 | x86 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ AccessConnectivity Engine\Engines |
| MSI | 2013 | x64 | x86 | HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ Microsoft\Office\15.0\Access Connectivity Engine\Engines |
メモ Access Connectivity Engine (ACE) がリモート データベースにアクセスできるように再度有効にするには、[ 値データ] を 1 に変更します。