Класс 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, 2021, 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/17/docs/api/java.base/java/util/PropertyPermission.html