- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- java.sql.SQLPermission
-
- All Implemented Interfaces:
Serializable,Guard
public final class SQLPermission extends BasicPermission
The permission for which theSecurityManagerwill check when code that is running an application with aSecurityManagerenabled, calls theDriverManager.deregisterDrivermethod,DriverManager.setLogWritermethod,DriverManager.setLogStream(deprecated) method,SyncFactory.setJNDIContextmethod,SyncFactory.setLoggermethod,Connection.setNetworkTimeoutmethod, or theConnection.abortmethod. If there is noSQLPermissionobject, these methods throw ajava.lang.SecurityExceptionas a runtime exception.A
SQLPermissionobject contains a name (also referred to as a "target name") but no actions list; there is either a named permission or there is not. The target name is the name of the permission (see below). The naming convention follows the hierarchical property naming convention. In addition, an asterisk may appear at the end of the name, following a ".", or by itself, to signify a wildcard match. For example:loadLibrary.*and*signify a wildcard match, while*loadLibraryanda*bdo not.The following table lists all the possible
SQLPermissiontarget names. The table gives a description of what the permission allows and a discussion of the risks of granting code the permission.Permission Target Name What the Permission Allows Risks of Allowing this Permission setLog Setting of the logging stream This is a dangerous permission to grant. The contents of the log may contain usernames and passwords, SQL statements, and SQL data. callAbort Allows the invocation of the ConnectionmethodabortPermits an application to terminate a physical connection to a database. setSyncFactory Allows the invocation of the SyncFactorymethodssetJNDIContextandsetLoggerPermits an application to specify the JNDI context from which the SyncProviderimplementations can be retrieved from and the logging object to be used by theSyncProviderimplementation.setNetworkTimeout Allows the invocation of the ConnectionmethodsetNetworkTimeoutPermits an application to specify the maximum period a Connectionor objects created from theConnectionwill wait for the database to reply to any one request.deregisterDriver Allows the invocation of the DriverManagermethodderegisterDriverPermits an application to remove a JDBC driver from the list of registered Drivers and release its resources. - Since:
- 1.3
- See Also:
BasicPermission,Permission,Permissions,PermissionCollection,SecurityManager, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SQLPermission(String name)Creates a newSQLPermissionobject with the specified name.SQLPermission(String name, String actions)Creates a newSQLPermissionobject with the specified name.
-
Method Summary
-
Methods declared in class java.security.BasicPermission
equals, getActions, hashCode, implies, newPermissionCollection
-
Methods declared in class java.security.Permission
checkGuard, getName, toString
-
-
-
-
Constructor Detail
-
SQLPermission
public SQLPermission(String name)
Creates a newSQLPermissionobject with the specified name. The name is the symbolic name of theSQLPermission.- Parameters:
name- the name of thisSQLPermissionobject, which must be eithersetLog,callAbort,setSyncFactory,deregisterDriver, orsetNetworkTimeout- Throws:
NullPointerException- ifnameisnull.IllegalArgumentException- ifnameis empty.
-
SQLPermission
public SQLPermission(String name, String actions)
Creates a newSQLPermissionobject with the specified name. The name is the symbolic name of theSQLPermission; the actionsStringis currently unused and should benull.- Parameters:
name- the name of thisSQLPermissionobject, which must be eithersetLog,callAbort,setSyncFactory,deregisterDriver, orsetNetworkTimeoutactions- should benull- Throws:
NullPointerException- ifnameisnull.IllegalArgumentException- ifnameis empty.
-
-