Класс PropertyPermission
- Все реализованные интерфейсы:
-
Serializable,Guard
public final class PropertyPermission extends BasicPermission
Имя — это имя свойства ("java.home", "os.name" и т. д.). Имена следуют иерархической схеме именования свойств. Также, может встречаться символ звездочки в конце имени, после точки или без нее, обозначающий подстановочный знак. Например: "java.*" и "*" обозначают подстановочный знак, в то время как "*java" и "a*b" — нет.
Разрешения передаются в конструктор в строке, содержащей список одного или нескольких ключевых слов, разделённых запятыми. Возможные ключевые слова — "read" и "write". Их значение определяется следующим образом:
- read
- разрешение на чтение. Разрешает вызов
System.getProperty. - write
- разрешение на запись. Разрешает вызов
System.setProperty.
Строка с действиями преобразуется в нижний регистр перед обработкой.
Следует соблюдать осторожность при предоставлении коду разрешений на доступ к определённым системным свойствам. Например, предоставление разрешения на доступ к системному свойству "java.home" предоставляет потенциально злонамеренному коду конфиденциальную информацию об окружении системы (каталог установки Java). Также предоставление разрешений на доступ к системным свойствам "user.name" и "user.home" предоставляет потенциально злонамеренному коду конфиденциальную информацию об окружении пользователя (имя учётной записи и домашний каталог пользователя).
- С тех пор как:
- 1.2
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PropertyPermission |
Создаёт новый объект PropertyPermission с указанным именем. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Проверяет равенство двух объектов PropertyPermission. |
String |
getActions() |
Возвращает «каноническое строковое представление» действий. |
int |
hashCode() |
Возвращает значение хэш-кода для этого объекта. |
boolean |
implies |
Проверяет, "подразумевает" ли этот объект PropertyPermission указанное разрешение. |
PermissionCollection |
newPermissionCollection() |
Возвращает новый объект PermissionCollection для хранения объектов PropertyPermission. |
Методы, объявленные в классе java.security.Permission
checkGuard, getName, toString
Подробное описание конструкторов
PropertyPermission
public PropertyPermission(String name, String actions)
- Параметры:
-
name- имя PropertyPermission. -
actions- строка действий. - Исключения:
-
NullPointerException- еслиnameявляетсяnull. -
IllegalArgumentException- еслиnameпуста или еслиactionsневерна.
Подробное описание методов
implies
public boolean implies(Permission p)
Более конкретно, этот метод возвращает true, если:
- p является экземпляром PropertyPermission,
- действия p являются подмножеством действий этого объекта, и
- имя p подразумевается именем этого объекта. Например, "java.*" подразумевает "java.home".
- Переопределяет:
-
impliesв классеBasicPermission - Параметры:
-
p- разрешение для проверки. - Возвращает:
- true, если указанное разрешение подразумевается этим объектом, false — если нет.
equals
public boolean equals(Object obj)
- Переопределяет:
-
equalsв классеBasicPermission - Параметры:
-
obj- объект, с которым мы проверяем равенство этому объекту. - Возвращает:
- true, если obj является PropertyPermission и имеет то же имя и действия, что и этот объект PropertyPermission.
- См. также:
hashCode
public int hashCode()
getName().hashCode(), где getName из суперкласса Permission.- Переопределяет:
-
hashCodeв классеBasicPermission - Возвращает:
- значение хэш-кода для этого объекта.
- См. также:
getActions
public String getActions()
getActions вернёт строку "read,write".- Переопределяет:
-
getActionsв классеBasicPermission - Возвращает:
- каноническое строковое представление действий.
newPermissionCollection
public PermissionCollection newPermissionCollection()
- Переопределяет:
-
newPermissionCollectionв классеBasicPermission - Возвращает:
- новый объект PermissionCollection, подходящий для хранения PropertyPermission.
© 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.base/java/util/PropertyPermission.html