Spec-Zone.ru › OpenJDK 8

Класс AWTPermission

  • java.lang.Object
    • java.security.Permission
      • java.security.BasicPermission
        • java.awt.AWTPermission
Все реализованные интерфейсы:
Serializable, Guard

public final class AWTPermission
extends BasicPermission

Этот класс предназначен для разрешений AWT. Разрешение AWT содержит имя целевого объекта, но не список действий; у вас есть разрешение на указанный объект или нет.

Имя целевого объекта — это имя разрешения AWT (см. ниже). Имена следуют соглашению об именовании иерархических свойств. Также может использоваться символ звёздочка для обозначения всех разрешений AWT.

В следующей таблице перечислены все возможные целевые имена разрешений, а для каждого из них приведено описание того, что разрешение позволяет, и обсуждение рисков предоставления коду этого разрешения.

Имя целевого разрешения Что разрешает разрешение Риски предоставления разрешения
accessClipboard Публикация и извлечение информации в буфер обмена AWT и из него Это позволит вредоносному коду обмениваться потенциально конфиденциальной информацией.
accessEventQueue Доступ к очереди событий AWT После получения очереди событий AWT вредоносный код может просмотреть и даже удалить существующие события из своей очереди, а также опубликовать ложные события, которые могут намеренно вызвать неправильное поведение приложения или аплета в небезопасном режиме.
accessSystemTray Доступ к экземпляру системного трея AWT Это позволит вредоносному коду добавлять значки в системный трей. Во-первых, такой значок может выглядеть как значок какой-либо известной программы (например, брандмауэра или антивируса) и предложить пользователю выполнить небезопасные действия (с помощью всплывающих сообщений). Во-вторых, системный трей может переполниться значками, так что никто больше не сможет добавить значок.
createRobot Создание объектов java.awt.Robot Объект java.awt.Robot позволяет коду генерировать события мыши и клавиатуры на уровне ядра, а также считывать экран. Это может позволить вредоносному коду контролировать систему, запускать другие программы, считывать экран и блокировать доступ пользователя к мыши и клавиатуре.
fullScreenExclusive Переход в полноэкранный режим Переход в полноэкранный режим позволяет получить прямой доступ к памяти видеокарты низкого уровня. Это может использоваться для подделки системы, так как программа имеет прямой контроль над отрисовкой. В зависимости от реализации, предупреждение о безопасности может не отображаться для окон, используемых для перехода в полноэкранный режим (при условии, что разрешение fullScreenExclusive было предоставлено этому приложению). Обратите внимание, что это поведение не означает, что разрешение showWindowWithoutWarningBanner будет автоматически предоставлено приложению, имеющему разрешение fullScreenExclusive: окна, не находящиеся в полноэкранном режиме, по-прежнему будут отображаться с предупреждением о безопасности.
listenToAllAWTEvents Прослушивание всех событий AWT, во всей системе После добавления слушателя событий AWT вредоносный код может сканировать все события AWT, рассылаемые в системе, что позволяет ему считывать все пользовательские вводы (например, пароли). Каждый слушатель событий AWT вызывается в контексте потока обработки событий этой очереди, поэтому, если разрешение accessEventQueue также включено, вредоносный код может изменять содержимое очередей событий AWT во всей системе, что может привести к неправильному поведению приложения или аплета в небезопасном режиме.
readDisplayPixels Чтение пикселей с экрана дисплея Интерфейсы, такие как интерфейс java.awt.Composite или класс java.awt.Robot, позволяют произвольному коду исследовать пиксели на экране. Это может позволить вредоносному коду следить за действиями пользователя.
replaceKeyboardFocusManager Устанавливает KeyboardFocusManager для определенного потока. Когда SecurityManager установлен, вызывающему потоку необходимо предоставить это разрешение, чтобы заменить текущий KeyboardFocusManager. Если разрешение не предоставлено, будет выброшено SecurityException.
setAppletStub Установка подстановки, которая реализует контейнерные сервисы апплетов Вредоносный код может установить подстановку аплета, что может привести к неожиданному поведению или отказу в обслуживании аплета.
setWindowAlwaysOnTop Установление свойства «всегда поверх» окна: Window.setAlwaysOnTop(boolean) Вредоносное окно может сделать себя похожим на настоящий рабочий стол, чтобы информация, вводимая неосторожным пользователем, фиксировалась и затем использовалась не по назначению.
showWindowWithoutWarningBanner Отображение окна без отображения баннера с предупреждением о том, что окно создано апплетом Без этого предупреждения аплет может открывать окна, не информируя пользователя о том, что они принадлежат апплету. Поскольку пользователи могут принимать решения, зависящие от безопасности, в зависимости от принадлежности окна апплету (ввод имени пользователя и пароля в диалоговое окно, например), отключение этого баннера с предупреждением может позволить апплетам обмануть пользователя, заставив его ввести такую информацию.
toolkitModality Создание TOOLKIT_MODAL диалоговых окон и установление свойства окна TOOLKIT_EXCLUDE. При отображении диалогового окна с режимом модальности инструментария из аплета, все остальные апплеты в браузере блокируются. При запуске приложений из Java Web Start, его окна (например, диалоговое окно безопасности) также могут быть заблокированы диалоговыми окнами с режимом модальности инструментария, отображаемыми из этих приложений.
watchMousePointer Получение информации о позиции указателя мыши в любое время Постоянно наблюдая за указателем мыши, аплет может делать предположения о том, что делает пользователь, т. е. перемещение мыши в нижний левый угол экрана, скорее всего, означает, что пользователь собирается запустить приложение. Если используется виртуальная клавиатура, чтобы эмулировать клавиатуру с помощью мыши, аплет может предсказать, что набирается.
См. также:
BasicPermission, Permission, Permissions, PermissionCollection, SecurityManager, Сериализованная форма

Конструкторы

Конструктор и описание
AWTPermission(String name)

Создаёт новый объект AWTPermission со заданным именем.

AWTPermission(String name, String actions)

Создаёт новый объект AWTPermission со заданным именем.

Методы

Методы, унаследованные от класса 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

Конструкторы

AWTPermission

public AWTPermission(String name)

Создаёт новый объект AWTPermission со заданным именем. Имя — символическое имя AWTPermission, например, "topLevelWindow", "systemClipboard" и т. д. Звёздочка может использоваться для обозначения всех разрешений AWT.

Параметры:
name - имя AWTPermission
Исключения:
NullPointerException - если name равно null.
IllegalArgumentException - если name пустое.

AWTPermission

public AWTPermission(String name,
                     String actions)

Создаёт новый объект AWTPermission со заданным именем. Имя — символическое имя AWTPermission, а строка действий в настоящее время не используется и должна быть null.

Параметры:
name - имя AWTPermission
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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API