Spec-Zone.ru › OpenJDK 17

Класс 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, а строка actions в настоящее время не используется и должна быть null.
Параметры:
name - имя NetPermission.
actions - должно быть null.
Исключения:
NullPointerException - если name имеет значение null.
IllegalArgumentException - если name пустое.

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

Spec-Zone.ru

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