Spec-Zone.ru › OpenJDK 21

Класс NetPermission

java.lang.Object
java.security.Permission
java.security.BasicPermission
java.net.NetPermission
Все реализуемые интерфейсы:
Serializable, Guard
public final class NetPermission extends BasicPermission
Этот класс предназначен для различных разрешений на сетевые операции. Разрешение NetPermission содержит имя (также называемое "именем цели"), но не список действий; у вас есть разрешение на указанное имя или нет.

Имя цели — это имя сетевого разрешения (см. ниже). Конвенция именования следует соглашению об именовании иерархических свойств. Кроме того, звёздочка может появляться в конце имени после точки или сама по себе для обозначения подстановочного знака. Например: "foo.*" и "*" обозначают подстановочный знак, в то время как "*foo" и "a*b" — нет.

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

Имя целевого разрешения, что разрешает разрешение, и связанные риски
Имя целевого разрешения Что разрешает разрешение Риски предоставления этого разрешения
allowHttpTrace Возможность использования метода HTTP TRACE в HttpURLConnection. Злонамеренный код, использующий HTTP TRACE, может получить доступ к конфиденциальной информации безопасности в заголовках HTTP (например, cookie), к которой он иначе не имел бы доступа.
accessUnixDomainSocket Возможность принятия, привязки, подключения или получения локального адреса сокета Unix Domain. Злонамеренный код может подключиться к локальным процессам, используя сокеты Unix domain, или выдать себя за локальные процессы, привязавшись к тем же именам путей (при условии, что у него есть необходимые разрешения операционной системы).
getCookieHandler Возможность получения обработчика cookie, который обрабатывает конфиденциальную информацию cookie для сеанса Http. Злонамеренный код может получить обработчик cookie, чтобы получить доступ к конфиденциальной информации cookie. Некоторые веб-серверы используют cookie для сохранения личной информации пользователя, такой как информация об управлении доступом, или для отслеживания привычек просмотра пользователем.
getNetworkInformation Возможность получения всей информации о локальных сетевых интерфейсах. Злонамеренный код может прочитать информацию о сетевом оборудовании, такой как MAC-адреса, которые могут использоваться для построения локальных адресов IPv6.
getProxySelector Возможность получения селектора прокси, используемого для принятия решений о том, какие прокси использовать при установлении сетевых подключений. Злонамеренный код может получить ProxySelector для обнаружения прокси-хостов и портов во внутренних сетях, которые затем могут стать объектами атаки.
getResponseCache Возможность получения кэша ответов, предоставляющего доступ к локальному кэшу ответов. Злонамеренный код, получив доступ к локальному кэшу ответов, может получить доступ к конфиденциальной информации.
requestPasswordAuthentication Возможность запроса у зарегистрированного в системе аутентификатора пароля Злонамеренный код может украсть этот пароль.
setCookieHandler Возможность установки обработчика cookie, который обрабатывает конфиденциальную информацию cookie для сеанса Http. Злонамеренный код может установить обработчик cookie, чтобы получить доступ к конфиденциальной информации cookie. Некоторые веб-серверы используют cookie для сохранения личной информации пользователя, такой как информация об управлении доступом, или для отслеживания привычек просмотра пользователем.
setDefaultAuthenticator Возможность установить способ получения информации об аутентификации, когда прокси или HTTP-сервер запрашивают аутентификацию Злонамеренный код может установить аутентификатор, который отслеживает и крадёт пользовательский ввод аутентификации при получении ввода от пользователя.
setProxySelector Возможность установки селектора прокси, используемого для принятия решений о том, какие прокси использовать при установлении сетевых подключений. Злонамеренный код может установить ProxySelector, который направляет сетевой трафик на произвольный сетевой хост.
setResponseCache Возможность установки кэша ответов, предоставляющего доступ к локальному кэшу ответов. Злонамеренный код, получив доступ к локальному кэшу ответов, может получить доступ к конфиденциальной информации или создать ложные записи в кэше ответов.
setSocketImpl Возможность создания подкласса Socket или ServerSocket с пользователем заданным SocketImpl. Злонамеренные пользовательские SocketImpl могут изменить поведение Socket и ServerSocket неожиданными способами, благодаря их способности получить доступ к защищенным полям SocketImpl.
specifyStreamHandler Возможность указать обработчик потоков при построении URL. Злонамеренный код может создать URL с ресурсами, к которым он обычно не имеет доступа (например, file:/foo/fum/), указав обработчик потоков, который получает фактические байты откуда-то, к чему у него есть доступ. Таким образом, он может обмануть систему, чтобы создать ProtectionDomain/CodeSource для класса, даже если этот класс на самом деле не был получен от этого местоположения.
Примечание реализации:
Реализации могут определять дополнительные имена целей, но должны использовать соглашения об именовании, такие как обратный домен, чтобы избежать конфликтов имен.
С момента:
1.2
См. также:
  • BasicPermission
  • Permission
  • Permissions
  • PermissionCollection
  • SecurityManager
  • Сериализованная форма

Краткое описание конструкторов

Конструктор Описание
NetPermission(String name)
Создаёт новое NetPermission с указанным именем.
NetPermission(String name, String actions)
Создаёт новый объект NetPermission с указанным именем.

Краткое описание методов

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

Подробное описание конструкторов

NetPermission

public NetPermission(String name)
Создаёт новое NetPermission с указанным именем. Имя — это символическое имя NetPermission, например, "setDefaultAuthenticator" и т. д. Звёздочка может появляться в конце имени после точки или сама по себе для обозначения подстановочного знака.
Параметры:
name - имя NetPermission.
Исключения:
NullPointerException - если name равно null.
IllegalArgumentException - если name пусто.

NetPermission

public NetPermission(String name, String actions)
Создаёт новый объект NetPermission с указанным именем. Имя — это символическое имя NetPermission, а строка действий в настоящее время не используется и должна быть равна null.
Параметры:
name - имя NetPermission.
actions - должно быть равно null.
Исключения:
NullPointerException - если name равно null.
IllegalArgumentException - если name пусто.

© 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/net/NetPermission.html

Spec-Zone.ru

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