Класс AWTPermission

Все реализуемые интерфейсы:
Serializable, Guard
public final class AWTPermission
extends BasicPermission

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

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

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

Имя целевого разрешенияЧто разрешает это разрешениеРиски предоставления этого разрешения
accessClipboardОперации записи и чтения информации в буфер обмена AWTЭто позволит вредоносному коду обмениваться потенциально конфиденциальной или чувствительной информацией.
accessEventQueueДоступ к очереди событий AWTПосле получения доступа к очереди событий AWT вредоносный код может просматривать и даже удалять существующие события из её очереди, а также отправлять поддельные события, которые могут намеренно привести к небезопасному поведению приложения или аплета.
accessSystemTrayДоступ к экземпляру AWT SystemTrayЭто позволит вредоносному коду добавлять значки в системный трей. Во-первых, такой значок может выглядеть как значок известного приложения (например, брандмауэра или антивируса) и попросить пользователя выполнить небезопасные действия (с помощью всплывающих сообщений). Во-вторых, системный трей может быть переполнен значками, так что больше никто не сможет добавить значок.
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.Когда диалоговое окно с модальностью toolkit отображается из апплета, оно блокирует все другие апплеты в браузере. При запуске приложений с помощью Java Web Start его окна (например, диалоговое окно безопасности) также могут быть заблокированы диалоговыми окнами с модальностью toolkit, отображаемыми из этих приложений.
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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/AWTPermission.html

Spec-Zone .ru
спецификации, руководства, описания, API