Класс SQLPermission
- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- java.sql.SQLPermission
- Все реализованные интерфейсы:
-
Serializable,Guard
public final class SQLPermission extends BasicPermission
Разрешение, которое проверяет SecurityManager, когда код, выполняющий приложение с включенной SecurityManager, вызывает метод DriverManager.deregisterDriver, метод DriverManager.setLogWriter, метод DriverManager.setLogStream (устаревший), метод SyncFactory.setJNDIContext, метод SyncFactory.setLogger, метод Connection.setNetworkTimeout или метод Connection.abort. Если объекта SQLPermission нет, эти методы выбрасывают исключение java.lang.SecurityException в качестве исключения времени выполнения.
Объект SQLPermission содержит имя (также называемое «именем целевого объекта»), но не список действий; либо есть разрешение с именем, либо его нет. Имя целевого объекта — это имя разрешения (см. ниже). Конвенция именования следует конвенции именования иерархических свойств. Кроме того, в конце имени после «.» или самостоятельно может стоять символ звёздочки, чтобы указать на соответствие по шаблону. Например: loadLibrary.* и * означают соответствие по шаблону, а *loadLibrary и a*b — нет.
В следующей таблице перечислены все возможные целевые имена SQLPermission. В таблице приведено описание того, что разрешает разрешение, и обсуждение рисков предоставления коду разрешения.
| Целевое имя разрешения | Что разрешает разрешение | Риски предоставления этого разрешения |
|---|---|---|
| setLog | Установка потока регистрации | Это опасное разрешение для предоставления. Содержание журнала может содержать имена пользователей и пароли, SQL-запросы и SQL-данные. |
| callAbort | Разрешает вызов метода Connection abort
| Разрешает приложению завершить физическое подключение к базе данных. |
| setSyncFactory | Разрешает вызов методов SyncFactory setJNDIContext и setLogger
| Разрешает приложению указать контекст JNDI, из которого могут быть извлечены реализации SyncProvider, и объект регистрации, который будет использоваться реализацией SyncProvider. |
| setNetworkTimeout | Разрешает вызов метода Connection setNetworkTimeout
| Разрешает приложению указать максимальный период, в течение которого Connection или объекты, созданные из Connection, будут ждать ответа базы данных на любой один запрос. |
| deregisterDriver | Разрешает вызов метода DriverManager deregisterDriver
| Разрешает приложению удалить драйвер JDBC из списка зарегистрированных драйверов и освободить его ресурсы. |
- С:
- 1.3
- См. также:
-
BasicPermission,Permission,Permissions,PermissionCollection,SecurityManager, Сериализованная форма
Конструкторы
| Конструктор | Описание |
|---|---|
SQLPermission(String name) | Создает новый объект |
SQLPermission(String name,
String actions) | Создает новый объект |
Методы
Методы, объявленные в классе java.security.BasicPermission
equals, getActions, hashCode, implies, newPermissionCollection Методы, объявленные в классе java.security.Permission
checkGuard, getName, toString Методы, объявленные в классе java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
SQLPermission
public SQLPermission(String name)
Создает новый объект SQLPermission с указанным именем. Имя — это символическое имя SQLPermission.
- Параметры:
-
name- имя этого объектаSQLPermission, которое должно быть либоsetLog, либоcallAbort, либоsetSyncFactory, либоderegisterDriver, либоsetNetworkTimeout - Исключения:
-
NullPointerException- еслиnameравноnull. -
IllegalArgumentException- еслиnameпусто.
SQLPermission
public SQLPermission(String name,
String actions) Создает новый объект SQLPermission с указанным именем. Имя — это символическое имя SQLPermission; действия String в настоящее время не используются и должны быть null.
- Параметры:
-
name- имя этого объектаSQLPermission, которое должно быть либоsetLog, либоcallAbort, либоsetSyncFactory, либоderegisterDriver, либоsetNetworkTimeout -
actions- должно бытьnull - Исключения:
-
NullPointerException- еслиnameравноnull. -
IllegalArgumentException- еслиnameпусто.
© 1993, 2020, 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/11/docs/api/java.sql/java/sql/SQLPermission.html