Anwendungssicherheit
Wenn Sie Microsoft JDBC-Treiber für SQL Server verwenden, müssen Sie Vorsichtsmaßnahmen ergreifen, um die Sicherheit der Anwendung sicherzustellen. Die folgenden Abschnitte enthalten Informationen zu den Schritten, die Sie zum Sichern der Anwendung ergreifen können.
Verwenden von Java-Richtlinienberechtigungen
Wenn Sie Microsoft JDBC-Treiber für SQL Server verwenden, müssen Sie die für den JDBC-Treiber erforderlichen Java-Richtlinienberechtigungen angeben. Die Java Runtime Environment (JRE) bietet ein umfangreiches Sicherheitsmodell. Dieses Modell kann zur Laufzeit verwendet werden, um zu bestimmen, ob ein Thread auf eine Ressource zugreifen kann. Dieser Zugriff kann durch Sicherheitsrichtliniendateien gesteuert werden. Die Richtliniendateien selbst werden vom Bereitsteller und vom SysAdmin für den Container verwaltet. Die in diesem Artikel aufgeführten Berechtigungen betreffen die Funktionsweise des JDBC-Treibers.
Eine normale Berechtigung in der Richtliniendatei sieht folgendermaßen aus:
// Example policy file entry.
grant [signedBy <signer>,] [codeBase <code source>] {
permission <class> [<name> [, <action list>]];
};
Die folgende Codebasis muss auf die Codebasis des JDBC-Treibers beschränkt werden, damit die minimal erforderliche Anzahl an Privilegien gewährt wird.
grant codeBase "file:/install_dir/lib/-" {
// Grant access to data source.
permission java.util.PropertyPermission "java.naming.*", "read,write";
// Specify which hosts can be connected to.
permission java.net.socketPermission "host:port", "connect";
// Logger permission to take advantage of logging.
permission java.util.logging.LoggingPermission;
// Grant listen/connect/accept permissions to the driver if
// connecting to a named instance as the client driver.
// This connects to a udp service and listens for a response.
permission java.net.SocketPermission "*", "listen, connect, accept";
};
Hinweis
Der Code "file:/install_dir/lib/-" bezieht sich auf das Installationsverzeichnis des JDBC-Treibers.
Schützen der Serverkommunikation
Wenn Sie den JDBC-Treiber für die Kommunikation mit einer SQL Server-Datenbank verwenden, ist es wichtig, den Kommunikationskanal zu schützen. Sie können den Kommunikationskanal mit IPSec (Internet Protocol Security) und/oder Transport Layer Security (TLS) schützen, früher als Secure Sockets Layer (SSL) bezeichnet.
Die TLS-Unterstützung bietet zusätzlich zu IPSec eine weitere Schutzebene. Weitere Informationen zur Verwendung von TLS finden Sie unter Verwenden von Verschlüsselung.