Serializable, Guard
public final class SQLPermission extends BasicPermission
SecurityManager will check when code that is running an application with a SecurityManager enabled, calls the DriverManager.deregisterDriver method, DriverManager.setLogWriter method, DriverManager.setLogStream (deprecated) method, SyncFactory.setJNDIContext method, SyncFactory.setLogger method, Connection.setNetworkTimeout method, or the Connection.abort method. If there is no SQLPermission object, these methods throw a java.lang.SecurityException as a runtime exception.  A SQLPermission object 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 *loadLibrary and a*b do not. 
 The following table lists all the possible SQLPermission target 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 Connectionmethodabort | Permits an application to terminate a physical connection to a database. | 
| setSyncFactory | Allows the invocation of the SyncFactorymethodssetJNDIContextandsetLogger | Permits 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 ConnectionmethodsetNetworkTimeout | Permits 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 DriverManagermethodderegisterDriver | Permits an application to remove a JDBC driver from the list of registered Drivers and release its resources. | 
| Constructor | Description | 
|---|---|
| SQLPermission | Creates a new  SQLPermissionobject with the specified name. | 
| SQLPermission | Creates a new  SQLPermissionobject with the specified name. | 
equals, getActions, hashCode, implies, newPermissionCollection
checkGuard, getName, toString
public SQLPermission(String name)
SQLPermission object with the specified name. The name is the symbolic name of the SQLPermission.name - the name of this SQLPermission object, which must be either  setLog, callAbort, setSyncFactory, deregisterDriver, or setNetworkTimeout
NullPointerException - if name is null.IllegalArgumentException - if name is empty.public SQLPermission(String name, String actions)
SQLPermission object with the specified name. The name is the symbolic name of the SQLPermission; the actions String is currently unused and should be null.name - the name of this SQLPermission object, which must be either  setLog, callAbort, setSyncFactory, deregisterDriver, or setNetworkTimeout
actions - should be null
NullPointerException - if name is null.IllegalArgumentException - if name is empty.
    © 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
    https://docs.oracle.com/en/java/javase/21/docs/api/java.sql/java/sql/SQLPermission.html