Класс SerializablePermission
- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- java.io.SerializablePermission
- Все реализованные интерфейсы:
- Serializable, Guard
public final class SerializablePermission extends BasicPermission
Этот класс предназначен для разрешений Serializable. SerializablePermission содержит имя (также называемое "именем целевого объекта"), но не список действий; у вас есть разрешение с заданным именем или нет.
Имя целевого объекта — это имя разрешения Serializable (см. ниже).
В следующей таблице перечислены все возможные имена целевых объектов SerializablePermission, а также для каждого из них приведено описание того, что позволяет разрешение, и обсуждение рисков предоставления коду этого разрешения.
| Имя целевого объекта разрешения | Что разрешение позволяет | Риски предоставления этого разрешения |
|---|---|---|
| enableSubclassImplementation | Реализация подкласса ObjectOutputStream или ObjectInputStream для переопределения стандартной сериализации или десериализации объектов соответственно | Код может использовать это для сериализации или десериализации классов преднамеренно злонамеренным образом. Например, во время сериализации вредоносный код может использовать это для преднамеренного хранения конфиденциальных данных частных полей способом, легко доступным для злоумышленников. Или же во время десериализации он может, например, десериализовать класс со всеми его частными полями, обнуленными. |
| enableSubstitution | Замена одного объекта другим во время сериализации или десериализации | Это опасно, так как вредоносный код может заменить фактический объект объектом, который имеет неверные или злонамеренные данные. |
- С:
- 1.2
- См. также:
-
BasicPermission,Permission,Permissions,PermissionCollection,SecurityManager, Форматированный вывод
Конструкторы
| Конструктор и описание |
|---|
SerializablePermission(String name) Создает новое SerializablePermission с заданным именем. |
SerializablePermission(String name,
String actions) Создает новый объект SerializablePermission с заданным именем. |
Методы
Методы, унаследованные от класса 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 Конструкторы
SerializablePermission
public SerializablePermission(String name)
Создает новое SerializablePermission с заданным именем. Имя — это символическое имя SerializablePermission, например, "enableSubstitution" и т. д.
- Параметры:
-
name- имя SerializablePermission. - Исключения:
-
NullPointerException- еслиnameравноnull. -
IllegalArgumentException- еслиnameпустое.
SerializablePermission
public SerializablePermission(String name,
String actions) Создает новый объект SerializablePermission с заданным именем. Имя — это символическое имя SerializablePermission, а строка actions в настоящее время не используется и должна быть равна null.
- Параметры:
-
name- имя SerializablePermission. -
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.