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