So konfigurieren Sie Jet 4.0 darauf, dass unsichere Funktionen nicht in Access 2000 und Access 2002 ausgeführt werden können

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 239482 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D239482
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
239482 How to configure Jet 4.0 to prevent unsafe functions from running in Access 2000 and Access 2002
Dieser Artikel bezieht sich ausschließlich auf eine Microsoft Access-Datenbank (.mdb).

Moderat: Erfordert grundlegende Kenntnisse in den Bereichen Makros, Codierung, Interoperabilität.
In Artikel 294698 wird dieses Thema für Microsoft Office Access 2003 behandelt.

Wichtig: Dieser Artikel enthält Informationen zum Bearbeiten der Registrierung. Bevor Sie die Registrierung bearbeiten, vergewissern Sie sich bitte, dass Sie die Registrierung wiederherstellen können, falls ein Problem auftritt. Weitere Informationen zum Erstellen einer Sicherungskopie, zum Wiederherstellen und Bearbeiten der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
256986 Beschreibung der Microsoft Windows-Registrierung
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Über die Microsoft Jet-Datenbank-Engine 4.0 kann ein Benutzer unsichere Funktionen für Microsoft Visual Basic für Applikationen durch den Dienst Microsoft Jet Expression aufrufen. Der Dienst Microsoft Jet Expression wird dazu verwendet, Ausdrücke in Formularen, Berichten und Anfragen auszuwerten.

Beispielsweise würde die folgende Anweisung dazu führen, dass alle Dateien aus dem aktuellen Ordner eines Computers gelöscht werden:
SELECT Shell("Cmd /c del *.*") As c1 From Customers
Hinweis: Der Shell-Befehl in diesem Beispiel funktioniert unter Microsoft Windows NT. Damit der Befehl auf einem Computer mit Microsoft Windows 95 oder Windows 98 funktioniert, muss er folgendermaßen geändert werden:
SELECT Shell("Command.com /c del *.*") As c1 From Customers
Ein Sicherheitsrisiko besteht dann, wenn Ausdrücke Visual Basic für Applikationen-Befehle enthalten, die für den Computer, der die Abfrage ausführt, schädlich sein können, zum Beispiel Shell-Befehle zum Löschen von Dateien oder zum Formatieren des Computers.

Inhalt

Einführung

Die Auswertung von Ausdrücken ist unter vielen Umständen wünschenswert. Wenn jedoch Teile des Ausdrucks einen Shell-Befehl enthalten, wird dieser analysiert und auf dem Computer ausgeführt.

Sie können solche Operationen über den so genannten "Sandbox-Modus" blockieren. Der Sandbox-Modus ist jedoch in Microsoft Jet 4.0 standardmäßig nicht für Abfragen aktiviert, die in Microsoft Access ausgeführt werden. Er ist für alle anderen Nicht-Access-Anwendungen aktiviert, wie zum Beispiel Open Database Connectivity (ODBC).

So aktivieren oder deaktivieren Sie den Sandbox-Modus

Warnung: Die unkorrekte Verwendung des Registrierungs-Editors kann schwerwiegende Probleme verursachen, die das gesamte System betreffen und eine Neuinstallation des Betriebssystems erforderlich machen. Microsoft kann nicht garantieren, dass Probleme, die von einer falschen Verwendung des Registrierungseditors herrühren, behoben werden können. Benutzen Sie den Registrierungseditor auf eigene Verantwortung.

Sie können den Sandbox-Modus für nicht-Access-Applikationen aktivieren. Es muss Windows 4.0 Service Pack 3 (SP3) oder höher installiert sein, damit Sie dieses Update installieren können. Nach der Installation des Updates wird bei der nächsten Ausführung von Jet ein neuer Registrierungsschlüssel zur Registrierung hinzugefügt. Dieser neue Registrierungsschlüssel verhindert diese Art von Sicherheitsrisiko. Der folgende Registrierungsschlüssel wird hinzugefügt:

\\HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\engines\SandboxMode


Weitere Informationen zum Herunterladen des neuesten Service Packs für Jet 4.0 finden Sie im folgenden Artikel der Microsoft Knowledge Base:
239114 So erhalten Sie das aktuelle Service Pack für die Microsoft Jet 4.0-Datenbank-Engine
In Jet 4.0 Service Pack 8 wurde die Operation des Sandbox-Modus so geändert, dass Sie die volle Kontrolle über den Modus haben, um Ihr System besser vor böswilligen Angriffen zu schützen. Gleichzeitig wird weiterhin die Ausführung älterer Anwendungen ermöglicht.

Sie können den Schlüssel auf die folgenden Werte setzen, wobei 0 (null) der am wenigsten und 3 der am meisten einschränkende Wert ist:

Tabelle minimierenTabelle vergrößern
EinstellungBeschreibung
0Sandbox-Modus ist immer deaktiviert.
1Sandbox-Modus gilt für Access-Anwendungen, nicht jedoch für Nicht-Access-Anwendungen.
2Sandbox-Modus gilt für Nicht-Access-Anwendungen, nicht jedoch für Access-Anwendungen. Dies ist der Standardwert.
3Sandbox-Modus ist immer aktiviert.

Wenn der Sandbox-Modus aktiviert ist, und Sie versuchen, Funktionen für Visual Basic für Applikationen in einer Jet 4.0-Abfrage zu verwenden, die als nicht sicher erachtet werden, wird die folgende Fehlermeldung angezeigt:

Undefinierte Funktion 'Funktionsname' in Ausdruck

Implementieren der Sandbox-Modus-Operationen

In Jet 4.0 Service Pack 8 sind die Möglichkeiten zur Implementierung des Sandbox-Modus erweitert worden, um die Kompatibilität mit Access-Datenbanken zu erhöhen. Vorhergehende Implementierungen des Sandbox-Modus waren zu restriktiv für die meisten Access-Anwendungen. Ab Jet 4.0 Service Pack 8 blockiert der erweiterte Sandbox-Modus weiterhin unsichere Funktionen von Visual Basic für Applikationen, aber Jet 4.0 Service Pack 8 lässt nun die Ausführung von benutzerdefinierten Funktionen zu.

Verwendung von Sandbox-Modus-Operationen mit Jet 4.0 Service Pack 3 oder höher

Sie können die folgende Liste von Funktionen in Jet-Anfragen verwenden, wenn der Sandbox-Modus aktiviert ist. Funktionen, die nicht in dieser Liste aufgeführt sind, sind bei aktiviertem Sandbox-Modus nicht verfügbar.
Tabelle minimierenTabelle vergrößern
ABS array ASC ASCB ASCW ATN
CBOOL CBYTE CCUR CDATE CDBL choose
CHR CHR$ CHRB CHRB$ CHRW CHRW$
CINT CLNG COS CSNG CSTR CVAR
CvDate CVErr date DATE$ DATEADD dateDiff
datePart DATESERIAL DATEVALUE day DDB error
error$ EXP fix format format$ fv
hex hex$ HOUR IIF IMEStatus inStr
INT IPMT IRR isDate isEmpty ISERROR
isNull isNumeric isObject lCase lCase$ LEFT
LEFT$ LEFTB LEFTB$ LEN LENB LOG
lTrim lTrim$ MID MID$ MIDB MIDB$
MINUTE MIRR MONTH NOW NPER NPV
oct oct$ partition PMT PPMT PV
QBColor RATE RGB RIGHT RIGHT$ RIGHTB
RIGHTB$ rnd round rTrim rTrim$ SECOND
sgn SIN SLN space space$ sqr
str str$ strComp strConv string string$
switch SYD TAN TIME TIME$ timer
timeSerial TIMEVALUE TRIM TRIM$ typeName uCase
uCase$ val varType WEEKDAY YEAR

Funktionen von Microsoft Visual Basic für Applikationen, die zu Fehlern führen, wenn sie bei Verwendung von Jet 4.0 Service Pack 8 über eine Jet-Anfrage oder Access-Eigenschaft aufgerufen werden

Die folgenden Funktionen für Visual Basic für Applikationen lösen einen Fehler aus, wenn diese von einem Ausdruck in einer Jet-Abfrage oder einer Access-Eigenschaft aus aufgerufen werden.
Tabelle minimierenTabelle vergrößern
AppActivateBeepCalendarCallByNameChDir
ChDriveCommandCommand$CreateObjectCurDir
CurDir$DeleteSettingDoEventsEnvironEnviron$
EOFErrFileAttrFileCopyFileDateTime
FileLenFreeFileGetAllSettingsGetAttrGetObject
GetSettingInputInput$InputBInputB$
KillLoadLocLOFRandomize
ResetSaveSettingSeekSendKeysSetAttr
ShellSpcTabUnloadUserForms
Width

Eigenschaften

Artikel-ID: 239482 - Geändert am: Montag, 24. April 2006 - Version: 6.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 2002 Standard Edition
  • Microsoft Open Database Connectivity-Treiber für Access 4.0
  • Microsoft Office 2000 Professional Edition
Keywords: 
kbhowto kbconfig kbinfo kbfix KB239482
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com